Skip to main content
September 30, 2020

Unity XR giving different angular velocity readouts for PCVR vs Quest build

  • September 30, 2020
  • 2 replies
  • 1284 views
Having an absolute nightmare trying to solve this bug, which makes no sense no matter how I look at it. Uising the TryGetFeatureValue to get the deviceAngularVelocity from the controller leads to different readouts on PCVR build vs when I build for Quest. From my testing it seems like the controllers are on the same axis/orientation so it's not that. Has anyone else experienced this? It seems like a huge flaw in the system, especially with the important of geasture based controls in VR. I have made 100+ builds trying to get around this but to no avail. It works as expected in PCVR but the Quests weird readouts are just to weird to wrap my head around, they make no logical sense and don't seem to be in any sort of idenfitable space.

    2 replies

    September 30, 2020
    Managed to fix this. Incase anyone else runs across this problem.
    For some reason you need to times the outputted angular velocity on the Quest by the inverse of the devices rotation. The thresholds still need to be flipped however. Pastebin below with PC vs Quest methods if anyone needs it. (New posted so had to break it up)

    pastebin. com/ ri7bRJp9





    New Participant
    February 3, 2025

    Hi, I am running the same issue. Could you please give a more detailed response about the fix? 

    As far as I understand, I need to multiply the inverse of DeviceRotation with DeviceAngularVelocity (?)

    Thank you in advance!