fix late latching?

This commit is contained in:
Schmarni
2024-01-29 04:17:20 +01:00
parent 1e4db18f84
commit 5c81f135e7
2 changed files with 22 additions and 0 deletions

View File

@@ -25,6 +25,7 @@ use bevy::render::extract_resource::ExtractResourcePlugin;
use bevy::render::pipelined_rendering::PipelinedRenderingPlugin;
use bevy::render::renderer::{render_system, RenderInstance};
use bevy::render::settings::RenderCreation;
use bevy::render::view::ExtractedView;
use bevy::render::{Render, RenderApp, RenderPlugin, RenderSet};
use bevy::tasks::available_parallelism;
use bevy::transform::systems::{propagate_transforms, sync_simple_transforms};
@@ -160,6 +161,7 @@ impl Plugin for OpenXrPlugin {
xr_input::xr_camera::xr_camera_head_sync,
sync_simple_transforms,
propagate_transforms,
update_cam_views,
)
.chain()
.run_if(xr_only())
@@ -185,6 +187,12 @@ impl Plugin for OpenXrPlugin {
}
}
fn update_cam_views(mut query: Query<(&mut ExtractedView, &GlobalTransform)>) {
for (mut view, transform) in &mut query {
view.transform = *transform;
}
}
fn xr_skip_frame(
xr_swapchain: Res<XrSwapchain>,
xr_frame_state: Res<XrFrameState>,

View File

@@ -65,6 +65,20 @@ impl ExtractComponent for TransformExtract {
}
}
#[derive(Component)]
pub(super) struct GlobalTransformExtract;
impl ExtractComponent for GlobalTransformExtract {
type Query = Read<GlobalTransform>;
type Filter = ();
type Out = GlobalTransform;
fn extract_component(item: bevy::ecs::query::QueryItem<'_, Self::Query>) -> Option<Self::Out> {
Some(*item)
}
}
#[derive(Copy, Clone, Debug, Eq, PartialEq, Hash, Ord, PartialOrd)]
pub enum Eye {
Left = 0,