@@ -212,24 +212,25 @@ class DriverProvider : public vr::IServerTrackedDeviceProvider {
212212 }
213213
214214 HapticsSend (id, haptics.fDurationSeconds , haptics.fFrequency , haptics.fAmplitude );
215- }
215+ } else if (event.eventType == vr::VREvent_ChaperoneUniverseHasChanged
216+ || event.eventType == vr::VREvent_ChaperoneRoomSetupFinished
217+ || event.eventType == vr::VREvent_ChaperoneFlushCache
218+ || event.eventType == vr::VREvent_ChaperoneSettingsHaveChanged
219+ || event.eventType == vr::VREvent_SeatedZeroPoseReset
220+ || event.eventType == vr::VREvent_StandingZeroPoseReset
221+ || event.eventType == vr::VREvent_SceneApplicationChanged
222+ || event.eventType == VendorEvent_ALVRDriverResync) {
223+ ResetChaperoneToStage ();
224+
216225#ifdef __linux__
217- else if (event.eventType == vr::VREvent_ChaperoneUniverseHasChanged
218- || event.eventType == vr::VREvent_ChaperoneRoomSetupFinished
219- || event.eventType == vr::VREvent_ChaperoneFlushCache
220- || event.eventType == vr::VREvent_ChaperoneSettingsHaveChanged
221- || event.eventType == vr::VREvent_SeatedZeroPoseReset
222- || event.eventType == vr::VREvent_StandingZeroPoseReset
223- || event.eventType == vr::VREvent_SceneApplicationChanged
224- || event.eventType == VendorEvent_ALVRDriverResync) {
225226 if (hmd && hmd->m_poseHistory ) {
226227 auto rawZeroPose = GetRawZeroPose ();
227228 if (rawZeroPose != nullptr ) {
228229 hmd->m_poseHistory ->SetTransform (*rawZeroPose);
229230 }
230231 }
231- }
232232#endif
233+ }
233234 }
234235 if (vr::VRServerDriverHost ()->IsExiting () && !shutdown_called) {
235236 Debug (" DriverProvider: Received shutdown event" );
0 commit comments