Head position tracking should run each frame
q009 opened this issue · comments
Currently head position tracking is tied to the current physics framerate, which is much lower than the desired 90Hz rendering rate. As a result, there's latency introduced when moving around.
Might need separate "move" and "physics" passes. The first one would run each frame and the second one would correct the position based on collision, air resistance, etc.
This approach however is prone to jerky movement, particularly when smoothly moving on slopes and stairs.
Therefore another approach would be simply running the physics pass for the VR player each frame. It's less optimal but far more accurate and in result, immune to aforementioned issues.
Upon closer inspection I figured out that the physics update rate is scheduled to run at a maximum of 125 Hz. Meaning, there will be no latency in the movement updates as long as the framerate doesn't exceed 125 FPS. Closing this issue, support for higher framerates is unlikely to be ever needed.