diff options
author | Peter Kim <pk15950@gmail.com> | 2022-02-23 10:46:17 +0300 |
---|---|---|
committer | Peter Kim <pk15950@gmail.com> | 2022-02-23 10:46:17 +0300 |
commit | abd81d76d2d35428bc0c73e60d9164abda902975 (patch) | |
tree | 3cb242d3bba12273d3b40c40b758c82dbc7572f1 /intern/ghost/GHOST_Types.h | |
parent | b33aaf5a2c78754728082327e5e61bf37fd9949b (diff) |
XR: Enable (selectively) Vive Tracker extension
Allows action bindings for the HTC Vive Trackers, so that their poses
can be queried and used for motion capture objects. For details on the
available tracker roles/user path identifiers, see: https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XR_HTCX_vive_tracker_interaction
Currently the extension is only supported by the SteamVR runtime (1.21)
and there a few issues (which could be on the Blender or SteamVR side),
such as incorrect controller poses when the extension is enabled.
For this reason, the tracker extension is added as a session option to
enable only when one wants to exclusively use trackers instead of
controllers.
Diffstat (limited to 'intern/ghost/GHOST_Types.h')
-rw-r--r-- | intern/ghost/GHOST_Types.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/intern/ghost/GHOST_Types.h b/intern/ghost/GHOST_Types.h index c654367072f..fb532b4c1fa 100644 --- a/intern/ghost/GHOST_Types.h +++ b/intern/ghost/GHOST_Types.h @@ -647,6 +647,10 @@ enum { * (use DirectX fallback instead). */ GHOST_kXrContextGpuNVIDIA = (1 << 2), # endif + /* Needed to selectively enable the #XR_HTCX_vive_tracker_interaction extension, as it causes + incorrect controller poses with SteamVR (1.21). Although not ideal, either trackers or + controllers (but not both) can be used during a given session. */ + GHOST_kXrContextEnableViveTrackerExtension = (1 << 3), }; typedef struct { |