diff --git a/interface/src/devices/SixenseManager.cpp b/interface/src/devices/SixenseManager.cpp index c7be89a121..c16611d2e8 100644 --- a/interface/src/devices/SixenseManager.cpp +++ b/interface/src/devices/SixenseManager.cpp @@ -36,6 +36,8 @@ const float NECK_X = 0.25f; // meters const float NECK_Y = 0.3f; // meters const float NECK_Z = 0.3f; // meters +const float CONTROLLER_THRESHOLD = 0.35f; + #ifdef __APPLE__ typedef int (*SixenseBaseFunction)(); typedef int (*SixenseTakeIntFunction)(int); @@ -326,6 +328,12 @@ void SixenseManager::update(float deltaTime) { } _controllersAtBase = (numControllersAtBase == 2); } + + for (auto axisState : _axisStateMap) { + if (fabsf(axisState.second) < CONTROLLER_THRESHOLD) { + _axisStateMap[axisState.first] = 0.0f; + } + } #endif // HAVE_SIXENSE }