Moving towards a working implementation of VR in FreeCAD with range support for various VR hardware
This thread continues (the) discussion from a (previous FreeCAD discussion) thread about Oculus Rift. I would like discuss here about wider VR hardware support. A few weeks ago an open VR/AR standard was presented: OpenXR.
Waiting for OpenXR hardware adoption (manufacturers like Oculus or Valve announced future support) I've starded experimenting with another API: OpenVR. OpenVR is not quite open as name suggest - it still needs a proprietary runtime (SteamVR), but unlike Oculus SDK it is supported on different operating systems and supports hardware from other manufacturers.
Initially, I started tinkering with jriegel Rift's implementation, but later i found Python bindings for OpenVR pyopenvr. Basic idea is: write (and experiment with) an implementation in pyopenvr, and then port the code to C++.
- FreeCAD v0.19.xxxxx
- Python 3.5+
- SteamVR Runtime (distributed with Valve Steam)
- numpy
- pivy.coin
- openvr
- sdl2
- Any HMD supported by OpenVR (HTC Vive, Valve Index, Oculus Rift)
- Install Python libraries
- Start SteamVR
- Start FreeCAD
- Paste
freecad-pyopenvr.py
contents in to the FreeCAD Python console
PR's are welcome!
Feedback, thoughts, questions, please direct them to the dedicated FreeCAD forum discussion thread.
Check LICENSE for details.