Only update plane location when camera has moved

This commit is contained in:
Danny McGee
2023-09-28 15:05:45 -04:00
parent 78303cd0b0
commit d70671aaac
+7 -6
View File
@@ -18,7 +18,7 @@ impl Plugin for TestScenePlugin {
})
.add_systems(Startup, spawn_scene)
.add_systems(
Update,
PostUpdate,
move_plane_with_camera.after(orbit_cam::pan_orbit_camera),
);
}
@@ -93,13 +93,14 @@ fn spawn_scene(
fn move_plane_with_camera(
mut plane: Query<(&WorldGridPlane, &mut Transform)>,
camera: Query<&OrbitCam>,
camera: Query<&OrbitCam, Changed<OrbitCam>>,
) {
let &OrbitCam { focus, .. } = camera.single();
let (_, mut xform) = plane.single_mut();
if let Ok(&OrbitCam { focus, .. }) = camera.get_single() {
let (_, mut xform) = plane.single_mut();
xform.translation.x = focus.x;
xform.translation.z = focus.z;
xform.translation.x = focus.x;
xform.translation.z = focus.z;
}
}
#[derive(AsBindGroup, Clone, TypePath, TypeUuid)]