Description
On both left and right VRX controllers, the controller bindings for the thumb sticks may continue firing while the thumb sticks are not used anymore in a specific scenario.
You may encounter this bug as follows:
- Hold the thumb stick of either the left or right controller in a direction.
- Press the menu button on the right VRX controller.
- Let go of the thumb stick.
While in the menu, the application is going to update in the background with the input bindings continuing to fire even though the controller's thumb sticks were let go of.
Affected Versions
Snapdragon Spaces Services
- Any
Snapdragon Spaces Plugin
- Any
Device Firmware versions
- VRX 980 and earlier
- VRX Controller 4.2 and earlier
Workaround
When the menu is opened, the controllers are marked as not tracked. This looks different for each engine.
Unity
The isTracked Unity - Scripting API: XR.CommonUsages.isTracked (unity3d.com) input binding of the controllers is set to false (the controllers continue being actively tracked).
The paths for the bindings are
- <OculusTouchController>{LeftHand}/isTracked
- <OculusTouchController>{RightHand}/isTracked
When both input binings report isTracked == false, then deactivate input from the controllers.
Unreal
The PointerController blueprint located at Plugins/SnapdragonSpacesSamples/Content/SnapdragonSpaces/Common/Placeable/BP_PointerController.uasset allows you to get IsTracked from the MotionController component of each controller. If it is false for both ingore input coming from the controller.