After letting it rest for a long while, I finalized the first usable version of my library to integrate OpenXR with Panda3D :
It is still very basic and limited, but it already supports mono and stereo views, HMD tracking, and hands position tracking. Contrary to OpenVR, OpenXR does not define a manifest language to define the actions, so I must first design an easy way to do it (and in line with what other engines are doing right now ). And sadly the same applies to skeletons.
Right now it is only available from source, I will publish a wheel version once I have a basic support for actions and created a simple mechanism to link Panda object to tracked elements.
Edit: To avoid package name hijacking, I pushed a first release on PyPi. You can now install the library using pip :
pip install panda3d-openxr
To make it work without needing to modify the Panda source code, I had to use the draw callbacks to reconfigure the OpenGL framebuffer and bind the textures provided by OpenXR instead of the one created by Panda. I donβt think this is the most effective way of doing this. I will probably in the future submit a feature request to optimize this, one I have a clear view of how everything works !