fix jitter while moving

This commit is contained in:
Robin Appelman
2018-03-19 01:47:10 +01:00
parent f9cf2880cd
commit a185c7a318
@@ -207,13 +207,13 @@ void MoveCenterTabController::eventLoopTick(vr::ETrackingUniverseOrigin universe
vr::VRControllerState_t state;
if (vr::VRSystem()->GetControllerState(rightId, &state, sizeof(vr::VRControllerState_t))) {
if (state.ulButtonPressed & vr::ButtonMaskFromId(vr::k_EButton_ApplicationMenu)) {
float newControllerX = rightPose->mDeviceToAbsoluteTracking.m[0][3];
float newControllerY = rightPose->mDeviceToAbsoluteTracking.m[1][3];
float newControllerZ = rightPose->mDeviceToAbsoluteTracking.m[2][3];
float newControllerX = rightPose->mDeviceToAbsoluteTracking.m[0][3] + m_offsetX;
float newControllerY= rightPose->mDeviceToAbsoluteTracking.m[1][3] + m_offsetY;
float newControllerZ= rightPose->mDeviceToAbsoluteTracking.m[2][3] + m_offsetZ;
if (m_moveActive) {
float diffX = newControllerX - m_lastControllerX;
float diffY = newControllerY - m_lastControllerY;
float diffZ = newControllerZ - m_lastControllerZ;
float diffX = (newControllerX - m_lastControllerX);
float diffY = (newControllerY - m_lastControllerY);
float diffZ = (newControllerZ - m_lastControllerZ);
vr::VRChaperoneSetup()->RevertWorkingCopy();
parent->AddOffsetToUniverseCenter((vr::TrackingUniverseOrigin)m_trackingUniverse, 0, diffX, m_adjustChaperone, false);
parent->AddOffsetToUniverseCenter((vr::TrackingUniverseOrigin)m_trackingUniverse, 1, diffY, m_adjustChaperone, false);