How to inject corrections to head tracking?

I’m working with a motion tracking company who successfully combines HMD IMU and proprietary sensor data to SteamVR using an OpenVR plugin. I’ve seen extensions for hand tracking as well as how to get HMD pose data using “XR_REFERENCE_SPACE_VIEW”, but I’m not seeing a way to access HMD pose data and modify it with external sensor data to be used for the final HMD pose information. Is there a way to do this that I’m missing? Also, is there a way to do this as a plug-in as opposed to something application specific?
Thanks,
Stuart

As you implied, the way to do this would be most likely on the runtime side. It’s possible that an API layer might be able to do some corrections as data passes thru, but it wouldn’t affect the runtime’s reprojection/time warp of the final image which might not be what you want.

Ultimately, the target is to improve the user’s experience by using better tracking than what would be available solely from the HMD and changing the runtime’s position/orientation before the images are rendered. With OpenXR in the condition it’s in, is there a way to do this? If not, is there a way to get this on the longer term OpenXR wish list?

The concern is that although we can currently do this in OpenVR, that solution may not be available in the future. (It wasn’t for SteamVR 1.15) Of course, it is a better development investment for us (and others doing sensor fusion) to be able to do this in a generalized way via Open XR.

Thanks,
Stuart

There’s nothing cross-runtime to let you do this right now. If this is important to you, I recommend joining/participating in the WG thru Khronos.

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.