fix late latching?
This commit is contained in:
@@ -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>,
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user