OpenXR support for GaussianViewer
- Add a new SIBR rendering mode
OpenXRRdrMode
to support Headed-Mounted dislay (HMD) OpenXR devices - GaussianViewer can use this rendering mode with
--rendering-mode 2
option to render 3D Gaussian Splatting scene to two-views headset display through OpenXR stack. - Works on Windows and Linux (through the SteamVR OpenXR runtime)
Note: OpenXRRdrMode
does not support actions (aka controller buttons). But two VR experiences are available:
- Free world standing: only headset's displacement allows move within the 3DGS scene
- Seated: controls with remote keyboard or mouse are available in addition to headset's displacement
How to test:
Windows (Meta Quest 1/2/3/Pro):
- Install Desktop PC Oculus Application: https://www.meta.com/en-gb/help/quest/articles/headsets-and-accessories/oculus-rift-s/install-app-for-link/
- Setup Quest Link: https://www.meta.com/en-gb/help/quest/articles/headsets-and-accessories/oculus-link/set-up-link/
- Headset should be in Oculus AirLink Home screen (white background)
- Run
gaussianViewer -m <dataset_path> --rendering-mode 2
- You can try
Free world standing
andSeated
VR experiences - If you are experiencing lags in the headset, try to lower the rendering resolution by changing
Down scale factor
slider value.
Linux (through Steam):
- Install Steam and SteamVR
- Make SteamVR the OpenXR default runtime (Settings > OpenXR > SET STEAMVR AS OPENXR RUNTIME)
- Restart SteamVR
- Run
gaussianViewer -m <dataset_path> --rendering-mode 2
I tested it with an HTC Vive Pro with beta - SteamVR Beta Update
on Ubuntu distribution.
Edited by Cedric Chedaleux