INNER CODE UNIT · Rust

look_and_camera

dust-engine/dust · crates/character/src/lib.rs:430

fn look_and_camera(
    mut characters: Query<(&mut Character, &Transform)>,
    mut cameras: Query<(&CharacterCamera, &mut Transform), Without<Character>>,
    mut cursor: Single<&mut CursorOptions, With<PrimaryWindow>>,
    mouse_motion: Res<AccumulatedMouseMotion>,
    mouse_buttons: Res<ButtonInput<MouseButton>>,
    keys: Res<ButtonInput<KeyCode>>,
    children: Query<&Children>,
    spatial_query: SpatialQuery,
    mut commands: Commands,
) {
    if keys.just_pressed(KeyCode::Escape) {
        cursor.grab_mode = CursorGrabMode::None;
        cursor.visible = true;
    } else if mouse_buttons.just_pressed(MouseButton::Left) {
        cursor.grab_mode = CursorGrabMode::Locked;
        cursor.visible = false;
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…