This is a release introducing OpenXR support. Open View->FreeCAD-XR to view scene in a virtual reality headset. Click View->FreeCAD-XR second time to close the viewer.
Requirements:
- virtual reality headset
- OpenXR runtime supporting OpenGL (XR_KHR_opengl_enable extension) eg. SteamVR. Windows Mixed Reality users have to use SteamVR, since the WMR runtime does not support OpenGL directly
- (optionally) motion controllers
Demo video
Scene navigation using motion controllers:
Press the left trigger (first controller) to activate the menu (one of bars will become green), select navigtion scheme and press the trigger second time to apply changes. You cannot move when the menu is active.
"Free" scheme:
- analog stick/trackpad of the first (usually left) controller moves viewer forward or backward along the controller axis
- analog stick/trackpad of the second (usually right) controller rotates viewer around center of the controller
"Arch" scheme:
- analog stick/trackpad of the first controller (usually left) moves viewer up/down and left/right
- analog stick/trackpad of the second controller (usually right) rotates viewer around center of the HMD and moves forward/backward.
Teleport ray is now available. Point the place when you want to move and press the right (second controller) trigger. Release the trigger and your feet will go to the selected point. Ray stays after teleport to show where you was before teleportation.
Rotation and translation speed can be adjusted now. Press the left trigger (first controller) to activate the menu, adjust speed and press the trigger second time to apply changes.
How to start:
- Enable/run your OpenXR runtime (eg. by starting SteamVR) - make sure that OpenXR loader path is set up (Windows registry key "ActiveRuntime" in HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1, Linux: /etc/xdg/openxr/1/active_runtime.json)
- Turn on motion controllers if you want use them
- Run FreeCAD, open a 3D model
- Start OpenXR session clicking View->FreeCAD-XR menu
Note: the "LinkDaily" package contains Windows binaries built from the LinkDaily branch. It is based on the realthunder's fork and can use a new experimental renderer that is often noticeably faster than original one.
Known limitations and issues:
- [Linux] Linux users have to use SteamVR 1.14 because of these issues ValveSoftware/SteamVR-for-Linux#421 ValveSoftware/SteamVR-for-Linux#422
- [Linux] Nvidia is not supported on because of lack of asynchronous reprojection support in SteamVR 1.14.
If you want to run on Nvidia/Linux you have to compile from git and use the latest SteamVR. The workaround is in this commit 5517192 To enable asynchronous reprojection on Nvidia (needed for OpenXR) SteamVR 1.18.5 or newer and Nvidia driver 470 or newer is needed. Check this SteamVR announcement for more info. - Viewer may crash if reopened several times.