From 2dd69b02c3f7d99c592c7e2b06689052ce0956f4 Mon Sep 17 00:00:00 2001 From: Lubos Date: Thu, 16 Jun 2022 18:07:08 +0200 Subject: [PATCH] SpaceWarp run physics with full refreshrate --- android/app/src/main/cpp/code/vr/vr_renderer.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/android/app/src/main/cpp/code/vr/vr_renderer.c b/android/app/src/main/cpp/code/vr/vr_renderer.c index 90ee98fa..823b1a70 100644 --- a/android/app/src/main/cpp/code/vr/vr_renderer.c +++ b/android/app/src/main/cpp/code/vr/vr_renderer.c @@ -446,7 +446,7 @@ void VR_DrawFrame( engine_t* engine ) { beginFrameDesc.type = XR_TYPE_FRAME_BEGIN_INFO; beginFrameDesc.next = NULL; OXR(xrBeginFrame(engine->appState.Session, &beginFrameDesc)); - Com_PreFrame(); + XrViewLocateInfo projectionInfo = {}; projectionInfo.type = XR_TYPE_VIEW_LOCATE_INFO; @@ -481,6 +481,15 @@ void VR_DrawFrame( engine_t* engine ) { vr.fov_x = (fabs(fov.angleLeft) + fabs(fov.angleRight)) * 180.0f / M_PI; vr.fov_y = (fabs(fov.angleUp) + fabs(fov.angleDown)) * 180.0f / M_PI; + Com_PreFrame(); + if (vr_spacewarp->integer) { + IN_VRUpdateHMD( invViewTransform[0] ); + IN_VRUpdateControllers( invViewTransform[0], frameState.predictedDisplayTime ); + IN_VRSyncActions(); + Com_PostFrame(); + Com_PreFrame(); + } + // Update HMD and controllers IN_VRUpdateHMD( invViewTransform[0] ); IN_VRUpdateControllers( invViewTransform[0], frameState.predictedDisplayTime );