A Virtual Reality (OpenXR) workbench written in Python. Aims for easier installation and more flexibility than C++ XR fork.
- FreeCAD 0.20 or later
- Python 3.11+
- an OpenXR Runtime, it can be selected manually with:
XR_RUNTIME_JSON=json_file_placement FreeCAD_executable
example:
XR_RUNTIME_JSON=/usr/local/share/openxr/1/openxr_monado.json ./FreeCAD_1.0.0-conda-Linux-x86_64-py311.AppImage
- pyopenxr
- PyOpenGL
Installation of the libraries:
- Linux:
pip install pyopenxr
- Windows: navigate to the
FreeCAD_xxx/bin
directory and run:python.exe -m pip install pyopenxr
- Any HMD supported by OpenXR (HTC Vive, Valve Index, Oculus Rift, or a Windows Mixed Reality headset)
Copy the freecad-xr-workbench
directory to FreeCAD's Mod
directory:
- Linux
/home/username/.FreeCAD/Mod/
(can be/home/username/.local/share/FreeCAD/Mod/
in old releases) - Windows
%APPDATA%\FreeCAD\Mod\
, which is usuallyC:\Users\username\Appdata\Roaming\FreeCAD\Mod\
See also: FreeCAD Wiki: Installing more workbenches
A new XR
workbench will appear.
Wayland/EGL support not implemented yet.
Linux specific:
SteamVR performance can be abysmal, it is often much better with Monado. However, running Monado with libsurvive using multiple Lighthouses can cause bad tracking. Fortunately, there is a way to combine the best of both world - use Monado with SteamVR tracking:
STEAMVR_LH_ENABLE=true monado-service
Check LICENSE for details.