From 8ea04d5ddd4009b31d6d55f0c584b36c52b4e5d0 Mon Sep 17 00:00:00 2001 From: awtterpip Date: Sat, 16 Mar 2024 23:05:30 -0500 Subject: [PATCH] no jitter at all --- crates/bevy_openxr/src/render.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/crates/bevy_openxr/src/render.rs b/crates/bevy_openxr/src/render.rs index 8d823b7..2263bea 100644 --- a/crates/bevy_openxr/src/render.rs +++ b/crates/bevy_openxr/src/render.rs @@ -49,6 +49,9 @@ impl Plugin for XrRenderPlugin { ) .chain() .in_set(RenderSet::PrepareAssets), + begin_frame + .before(RenderSet::Queue) + .before(insert_texture_views), wait_image.in_set(RenderSet::Render).before(render_system), (end_frame).chain().in_set(RenderSet::Cleanup), ) @@ -93,17 +96,12 @@ pub fn init_views( commands.insert_resource(XrViews(views)); } -pub fn wait_frame( - mut frame_waiter: ResMut, - mut commands: Commands, - frame_stream: Res, -) { +pub fn wait_frame(mut frame_waiter: ResMut, mut commands: Commands) { let _span = info_span!("xr_wait_frame"); let state = frame_waiter.wait().expect("Failed to wait frame"); // Here we insert the predicted display time for when this frame will be displayed. // TODO: don't add predicted_display_period if pipelined rendering plugin not enabled commands.insert_resource(XrTime(state.predicted_display_time)); - frame_stream.begin().expect("Failed to begin frame"); } pub fn locate_views(