Enabling XR_EXT_hand_tracking OpenXR Extension on VR Headsets in PCVR Mode
Starting from version v2.1.0
, the SenseGlove Unreal Engine Plugin requires the XR_EXT_hand_tracking
OpenXR extension to function. If you are streaming your immersive 3D VR application from your PC to your VR headset, enabling XR_EXT_hand_tracking
support, requires additional plugins and settings depending on the HMD's vendor or model.
Enabling OpenXR Plugin and Disabling OpenXRHandTracking Plugin
Regardless of the type or vendor of the HMD you have in mind for development or deployment purposes, the OpenXR
plugin is required as a prerequisite. Also, ensure the OpenXRHandTracking
is disabled as it conflicts with the SenseGlove Unreal Engine Plugin since both implement the same XR_EXT_hand_tracking
OpenXR extension.
Though enabling the SenseGlove Unreal Engine Plugin should enable the OpenXR
plugin automatically, it is recommended to ensure this plugin is enabled, and most importantly OpenXRHandTracking
is disabled, by navigating to Edit > Plugins
in the Unreal Editor menus.
The OpenXRHandTracking
plugin implements the XR_EXT_hand_tracking
OpenXR extension.
Meta Quest
To set up XR_EXT_hand_tracking
support on Meta Quest HMDs in PCVR mode, depending on your project requirements (e.g. whether you rely on the Meta XR
plugin or not), additional setup steps are required.
Meta Quest Link App
For Meta Quest headsets, enable the Developer runtime features
under the Settings > Beta
section inside the Meta Quest Link app:
important
Enabling Developer runtime features
in the Meta Quest Link requires a
Meta Developer Account.
If you are not signed in using a Meta Developer Account, this option won't
be shown to you inside Meta Quest Link.
caution
Streaming to Meta Quest headsets from SteamVR is no longer supported because
the migration to OpenXR has caused controller offsets for Meta Quest HMDs to
break on SteamVR. One possible reason is that
SteamVR lists XR_FB_hand_tracking
as an unsupported feature.
Further investigation is needed to identify the exact underlying cause.
Meta XR Plugin
caution
Please note that enabling the Meta XR
plugin alongside the SenseGlove plugin
will result in crashes or unexpected behavior. Meta XR
plugin compatibility
is being worked on and might be supported in the future.
HTC VIVE
To set up XR_EXT_hand_tracking
support on HTC VIVE HMDs in PCVR mode, additional plugins or configuration steps are required.
OpenXRViveTracker Plugin
To enable VIVE Trackers support ensure the OpenXRViveTracker
plugin is enabled by navigating to Edit > Plugins
in the Unreal Editor menus. This plugin should be enabled, or wrist tracking won't function on VIVE devices at all.
The OpenXRViveTracker
plugin implements the XR_HTCX_vive_tracker_interaction
OpenXR extension which is necessary to use VIVE Trackers or to emulate the VIVE Wrist Trackers as VIVE Trackers on Windows.
VIVE Business Streaming App
For VIVE headsets relying on the VIVE Business Streaming application, ensure the Hand Tracking settings under Input
are enabled and XR_HTCX_vive_tracker_interaction
is enabled for VIVE Wrist Trackers by enabling Emulate VIVE Wrist Tracker as VIVE Tracker
:
note
Tracking and accessing FXRMotionControllerData
output from SenseGlove
devices do not require Hand and Body Tracking to be enabled on the HMD device.
Enabling this feature is only necessary if you wish to use hand-tracking as a
fallback option when no glove is connected to your PC.
SteamVR App
After enabling the OpenXRViveTracker plugin and enabling Emulate VIVE Wrist Tracker as VIVE Tracker
for VIVE HMDs relying on the VIVE Business Streaming, you need to perform one final setup in the SteamVR app for the SenseGlove Unreal Engine Plugin to be able to retrieve the correct wrist-tracking offsets. Once you have paired your VIVE Trackers or VIVE Wrist Trackers, navigate to SteamVR Settings > Controllers > MANAGE TRACKERS
and make sure your left tracker is set to LEFT FOOT
and the right tracker is set to RIGHT FOOT
:
SenseGlove Wrist Tracking Settings
Once you have set up everything, it's time to adjust the SenseGlove Wrist Tracking Settings inside the project-wide plugin's settings. For detailed information, please visit the Wrist Tracking Hardware and HMD auto-detection configuration section as well.