class_openxrinterface.rst 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/modules/openxr/doc_classes/OpenXRInterface.xml.
  6. .. _class_OpenXRInterface:
  7. OpenXRInterface
  8. ===============
  9. **Inherits:** :ref:`XRInterface<class_XRInterface>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Our OpenXR interface.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. The OpenXR interface allows Godot to interact with OpenXR runtimes and make it possible to create XR experiences and games.
  15. Due to the needs of OpenXR this interface works slightly different than other plugin based XR interfaces. It needs to be initialized when Godot starts. You need to enable OpenXR, settings for this can be found in your games project settings under the XR heading. You do need to mark a viewport for use with XR in order for Godot to know which render result should be output to the headset.
  16. .. rst-class:: classref-introduction-group
  17. Tutorials
  18. ---------
  19. - :doc:`Setting up XR <../tutorials/xr/setting_up_xr>`
  20. .. rst-class:: classref-reftable-group
  21. Properties
  22. ----------
  23. .. table::
  24. :widths: auto
  25. +---------------------------+----------------------------------------------------------------------------------------------------+---------+
  26. | :ref:`float<class_float>` | :ref:`display_refresh_rate<class_OpenXRInterface_property_display_refresh_rate>` | ``0.0`` |
  27. +---------------------------+----------------------------------------------------------------------------------------------------+---------+
  28. | :ref:`float<class_float>` | :ref:`render_target_size_multiplier<class_OpenXRInterface_property_render_target_size_multiplier>` | ``1.0`` |
  29. +---------------------------+----------------------------------------------------------------------------------------------------+---------+
  30. .. rst-class:: classref-reftable-group
  31. Methods
  32. -------
  33. .. table::
  34. :widths: auto
  35. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`Array<class_Array>` | :ref:`get_action_sets<class_OpenXRInterface_method_get_action_sets>` **(** **)** |const| |
  37. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`Array<class_Array>` | :ref:`get_available_display_refresh_rates<class_OpenXRInterface_method_get_available_display_refresh_rates>` **(** **)** |const| |
  39. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | :ref:`Vector3<class_Vector3>` | :ref:`get_hand_joint_angular_velocity<class_OpenXRInterface_method_get_hand_joint_angular_velocity>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const| |
  41. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  42. | :ref:`Vector3<class_Vector3>` | :ref:`get_hand_joint_linear_velocity<class_OpenXRInterface_method_get_hand_joint_linear_velocity>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const| |
  43. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  44. | :ref:`Vector3<class_Vector3>` | :ref:`get_hand_joint_position<class_OpenXRInterface_method_get_hand_joint_position>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const| |
  45. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  46. | :ref:`float<class_float>` | :ref:`get_hand_joint_radius<class_OpenXRInterface_method_get_hand_joint_radius>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const| |
  47. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  48. | :ref:`Quaternion<class_Quaternion>` | :ref:`get_hand_joint_rotation<class_OpenXRInterface_method_get_hand_joint_rotation>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const| |
  49. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  50. | :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` | :ref:`get_motion_range<class_OpenXRInterface_method_get_motion_range>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand **)** |const| |
  51. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  52. | :ref:`bool<class_bool>` | :ref:`is_action_set_active<class_OpenXRInterface_method_is_action_set_active>` **(** :ref:`String<class_String>` name **)** |const| |
  53. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  54. | void | :ref:`set_action_set_active<class_OpenXRInterface_method_set_action_set_active>` **(** :ref:`String<class_String>` name, :ref:`bool<class_bool>` active **)** |
  55. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  56. | void | :ref:`set_motion_range<class_OpenXRInterface_method_set_motion_range>` **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` motion_range **)** |
  57. +--------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. .. rst-class:: classref-section-separator
  59. ----
  60. .. rst-class:: classref-descriptions-group
  61. Signals
  62. -------
  63. .. _class_OpenXRInterface_signal_pose_recentered:
  64. .. rst-class:: classref-signal
  65. **pose_recentered** **(** **)**
  66. Informs the user queued a recenter of the player position.
  67. .. rst-class:: classref-item-separator
  68. ----
  69. .. _class_OpenXRInterface_signal_session_begun:
  70. .. rst-class:: classref-signal
  71. **session_begun** **(** **)**
  72. Informs our OpenXR session has been started.
  73. .. rst-class:: classref-item-separator
  74. ----
  75. .. _class_OpenXRInterface_signal_session_focussed:
  76. .. rst-class:: classref-signal
  77. **session_focussed** **(** **)**
  78. Informs our OpenXR session now has focus.
  79. .. rst-class:: classref-item-separator
  80. ----
  81. .. _class_OpenXRInterface_signal_session_stopping:
  82. .. rst-class:: classref-signal
  83. **session_stopping** **(** **)**
  84. Informs our OpenXR session is stopping.
  85. .. rst-class:: classref-item-separator
  86. ----
  87. .. _class_OpenXRInterface_signal_session_visible:
  88. .. rst-class:: classref-signal
  89. **session_visible** **(** **)**
  90. Informs our OpenXR session is now visible (output is being sent to the HMD).
  91. .. rst-class:: classref-section-separator
  92. ----
  93. .. rst-class:: classref-descriptions-group
  94. Enumerations
  95. ------------
  96. .. _enum_OpenXRInterface_Hand:
  97. .. rst-class:: classref-enumeration
  98. enum **Hand**:
  99. .. _class_OpenXRInterface_constant_HAND_LEFT:
  100. .. rst-class:: classref-enumeration-constant
  101. :ref:`Hand<enum_OpenXRInterface_Hand>` **HAND_LEFT** = ``0``
  102. Left hand.
  103. .. _class_OpenXRInterface_constant_HAND_RIGHT:
  104. .. rst-class:: classref-enumeration-constant
  105. :ref:`Hand<enum_OpenXRInterface_Hand>` **HAND_RIGHT** = ``1``
  106. Right hand.
  107. .. _class_OpenXRInterface_constant_HAND_MAX:
  108. .. rst-class:: classref-enumeration-constant
  109. :ref:`Hand<enum_OpenXRInterface_Hand>` **HAND_MAX** = ``2``
  110. Maximum value for the hand enum.
  111. .. rst-class:: classref-item-separator
  112. ----
  113. .. _enum_OpenXRInterface_HandMotionRange:
  114. .. rst-class:: classref-enumeration
  115. enum **HandMotionRange**:
  116. .. _class_OpenXRInterface_constant_HAND_MOTION_RANGE_UNOBSTRUCTED:
  117. .. rst-class:: classref-enumeration-constant
  118. :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` **HAND_MOTION_RANGE_UNOBSTRUCTED** = ``0``
  119. .. _class_OpenXRInterface_constant_HAND_MOTION_RANGE_CONFORM_TO_CONTROLLER:
  120. .. rst-class:: classref-enumeration-constant
  121. :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` **HAND_MOTION_RANGE_CONFORM_TO_CONTROLLER** = ``1``
  122. .. _class_OpenXRInterface_constant_HAND_MOTION_RANGE_MAX:
  123. .. rst-class:: classref-enumeration-constant
  124. :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` **HAND_MOTION_RANGE_MAX** = ``2``
  125. .. rst-class:: classref-item-separator
  126. ----
  127. .. _enum_OpenXRInterface_HandJoints:
  128. .. rst-class:: classref-enumeration
  129. enum **HandJoints**:
  130. .. _class_OpenXRInterface_constant_HAND_JOINT_PALM:
  131. .. rst-class:: classref-enumeration-constant
  132. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_PALM** = ``0``
  133. Palm joint.
  134. .. _class_OpenXRInterface_constant_HAND_JOINT_WRIST:
  135. .. rst-class:: classref-enumeration-constant
  136. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_WRIST** = ``1``
  137. Wrist joint.
  138. .. _class_OpenXRInterface_constant_HAND_JOINT_THUMB_METACARPAL:
  139. .. rst-class:: classref-enumeration-constant
  140. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_THUMB_METACARPAL** = ``2``
  141. Thumb metacarpal joint.
  142. .. _class_OpenXRInterface_constant_HAND_JOINT_THUMB_PROXIMAL:
  143. .. rst-class:: classref-enumeration-constant
  144. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_THUMB_PROXIMAL** = ``3``
  145. Thumb proximal joint.
  146. .. _class_OpenXRInterface_constant_HAND_JOINT_THUMB_DISTAL:
  147. .. rst-class:: classref-enumeration-constant
  148. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_THUMB_DISTAL** = ``4``
  149. Thumb distal joint.
  150. .. _class_OpenXRInterface_constant_HAND_JOINT_THUMB_TIP:
  151. .. rst-class:: classref-enumeration-constant
  152. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_THUMB_TIP** = ``5``
  153. Thumb tip joint.
  154. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_METACARPAL:
  155. .. rst-class:: classref-enumeration-constant
  156. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_INDEX_METACARPAL** = ``6``
  157. Index metacarpal joint.
  158. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_PROXIMAL:
  159. .. rst-class:: classref-enumeration-constant
  160. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_INDEX_PROXIMAL** = ``7``
  161. Index proximal joint.
  162. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_INTERMEDIATE:
  163. .. rst-class:: classref-enumeration-constant
  164. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_INDEX_INTERMEDIATE** = ``8``
  165. Index intermediate joint.
  166. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_DISTAL:
  167. .. rst-class:: classref-enumeration-constant
  168. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_INDEX_DISTAL** = ``9``
  169. Index distal joint.
  170. .. _class_OpenXRInterface_constant_HAND_JOINT_INDEX_TIP:
  171. .. rst-class:: classref-enumeration-constant
  172. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_INDEX_TIP** = ``10``
  173. Index tip joint.
  174. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_METACARPAL:
  175. .. rst-class:: classref-enumeration-constant
  176. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MIDDLE_METACARPAL** = ``11``
  177. Middle metacarpal joint.
  178. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_PROXIMAL:
  179. .. rst-class:: classref-enumeration-constant
  180. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MIDDLE_PROXIMAL** = ``12``
  181. Middle proximal joint.
  182. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_INTERMEDIATE:
  183. .. rst-class:: classref-enumeration-constant
  184. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MIDDLE_INTERMEDIATE** = ``13``
  185. Middle intermediate joint.
  186. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_DISTAL:
  187. .. rst-class:: classref-enumeration-constant
  188. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MIDDLE_DISTAL** = ``14``
  189. Middle distal joint.
  190. .. _class_OpenXRInterface_constant_HAND_JOINT_MIDDLE_TIP:
  191. .. rst-class:: classref-enumeration-constant
  192. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MIDDLE_TIP** = ``15``
  193. Middle tip joint.
  194. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_METACARPAL:
  195. .. rst-class:: classref-enumeration-constant
  196. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_RING_METACARPAL** = ``16``
  197. Ring metacarpal joint.
  198. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_PROXIMAL:
  199. .. rst-class:: classref-enumeration-constant
  200. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_RING_PROXIMAL** = ``17``
  201. Ring proximal joint.
  202. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_INTERMEDIATE:
  203. .. rst-class:: classref-enumeration-constant
  204. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_RING_INTERMEDIATE** = ``18``
  205. Ring intermediate joint.
  206. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_DISTAL:
  207. .. rst-class:: classref-enumeration-constant
  208. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_RING_DISTAL** = ``19``
  209. Ring distal joint.
  210. .. _class_OpenXRInterface_constant_HAND_JOINT_RING_TIP:
  211. .. rst-class:: classref-enumeration-constant
  212. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_RING_TIP** = ``20``
  213. Ring tip joint.
  214. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_METACARPAL:
  215. .. rst-class:: classref-enumeration-constant
  216. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_LITTLE_METACARPAL** = ``21``
  217. Little metacarpal joint.
  218. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_PROXIMAL:
  219. .. rst-class:: classref-enumeration-constant
  220. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_LITTLE_PROXIMAL** = ``22``
  221. Little proximal joint.
  222. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_INTERMEDIATE:
  223. .. rst-class:: classref-enumeration-constant
  224. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_LITTLE_INTERMEDIATE** = ``23``
  225. Little intermediate joint.
  226. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_DISTAL:
  227. .. rst-class:: classref-enumeration-constant
  228. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_LITTLE_DISTAL** = ``24``
  229. Little distal joint.
  230. .. _class_OpenXRInterface_constant_HAND_JOINT_LITTLE_TIP:
  231. .. rst-class:: classref-enumeration-constant
  232. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_LITTLE_TIP** = ``25``
  233. Little tip joint.
  234. .. _class_OpenXRInterface_constant_HAND_JOINT_MAX:
  235. .. rst-class:: classref-enumeration-constant
  236. :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` **HAND_JOINT_MAX** = ``26``
  237. Maximum value for the hand joint enum.
  238. .. rst-class:: classref-section-separator
  239. ----
  240. .. rst-class:: classref-descriptions-group
  241. Property Descriptions
  242. ---------------------
  243. .. _class_OpenXRInterface_property_display_refresh_rate:
  244. .. rst-class:: classref-property
  245. :ref:`float<class_float>` **display_refresh_rate** = ``0.0``
  246. .. rst-class:: classref-property-setget
  247. - void **set_display_refresh_rate** **(** :ref:`float<class_float>` value **)**
  248. - :ref:`float<class_float>` **get_display_refresh_rate** **(** **)**
  249. The display refresh rate for the current HMD. Only functional if this feature is supported by the OpenXR runtime and after the interface has been initialized.
  250. .. rst-class:: classref-item-separator
  251. ----
  252. .. _class_OpenXRInterface_property_render_target_size_multiplier:
  253. .. rst-class:: classref-property
  254. :ref:`float<class_float>` **render_target_size_multiplier** = ``1.0``
  255. .. rst-class:: classref-property-setget
  256. - void **set_render_target_size_multiplier** **(** :ref:`float<class_float>` value **)**
  257. - :ref:`float<class_float>` **get_render_target_size_multiplier** **(** **)**
  258. The render size multiplier for the current HMD. Must be set before the interface has been initialized.
  259. .. rst-class:: classref-section-separator
  260. ----
  261. .. rst-class:: classref-descriptions-group
  262. Method Descriptions
  263. -------------------
  264. .. _class_OpenXRInterface_method_get_action_sets:
  265. .. rst-class:: classref-method
  266. :ref:`Array<class_Array>` **get_action_sets** **(** **)** |const|
  267. Returns a list of action sets registered with Godot (loaded from the action map at runtime).
  268. .. rst-class:: classref-item-separator
  269. ----
  270. .. _class_OpenXRInterface_method_get_available_display_refresh_rates:
  271. .. rst-class:: classref-method
  272. :ref:`Array<class_Array>` **get_available_display_refresh_rates** **(** **)** |const|
  273. Returns display refresh rates supported by the current HMD. Only returned if this feature is supported by the OpenXR runtime and after the interface has been initialized.
  274. .. rst-class:: classref-item-separator
  275. ----
  276. .. _class_OpenXRInterface_method_get_hand_joint_angular_velocity:
  277. .. rst-class:: classref-method
  278. :ref:`Vector3<class_Vector3>` **get_hand_joint_angular_velocity** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const|
  279. If handtracking is enabled, returns the angular velocity of a joint (``joint``) of a hand (``hand``) as provided by OpenXR. This is relative to :ref:`XROrigin3D<class_XROrigin3D>`!
  280. .. rst-class:: classref-item-separator
  281. ----
  282. .. _class_OpenXRInterface_method_get_hand_joint_linear_velocity:
  283. .. rst-class:: classref-method
  284. :ref:`Vector3<class_Vector3>` **get_hand_joint_linear_velocity** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const|
  285. If handtracking is enabled, returns the linear velocity of a joint (``joint``) of a hand (``hand``) as provided by OpenXR. This is relative to :ref:`XROrigin3D<class_XROrigin3D>` without worldscale applied!
  286. .. rst-class:: classref-item-separator
  287. ----
  288. .. _class_OpenXRInterface_method_get_hand_joint_position:
  289. .. rst-class:: classref-method
  290. :ref:`Vector3<class_Vector3>` **get_hand_joint_position** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const|
  291. If handtracking is enabled, returns the position of a joint (``joint``) of a hand (``hand``) as provided by OpenXR. This is relative to :ref:`XROrigin3D<class_XROrigin3D>` without worldscale applied!
  292. .. rst-class:: classref-item-separator
  293. ----
  294. .. _class_OpenXRInterface_method_get_hand_joint_radius:
  295. .. rst-class:: classref-method
  296. :ref:`float<class_float>` **get_hand_joint_radius** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const|
  297. If handtracking is enabled, returns the radius of a joint (``joint``) of a hand (``hand``) as provided by OpenXR. This is without worldscale applied!
  298. .. rst-class:: classref-item-separator
  299. ----
  300. .. _class_OpenXRInterface_method_get_hand_joint_rotation:
  301. .. rst-class:: classref-method
  302. :ref:`Quaternion<class_Quaternion>` **get_hand_joint_rotation** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandJoints<enum_OpenXRInterface_HandJoints>` joint **)** |const|
  303. If handtracking is enabled, returns the rotation of a joint (``joint``) of a hand (``hand``) as provided by OpenXR.
  304. .. rst-class:: classref-item-separator
  305. ----
  306. .. _class_OpenXRInterface_method_get_motion_range:
  307. .. rst-class:: classref-method
  308. :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` **get_motion_range** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand **)** |const|
  309. If handtracking is enabled and motion range is supported, gets the currently configured motion range for ``hand``.
  310. .. rst-class:: classref-item-separator
  311. ----
  312. .. _class_OpenXRInterface_method_is_action_set_active:
  313. .. rst-class:: classref-method
  314. :ref:`bool<class_bool>` **is_action_set_active** **(** :ref:`String<class_String>` name **)** |const|
  315. Returns ``true`` if the given action set is active.
  316. .. rst-class:: classref-item-separator
  317. ----
  318. .. _class_OpenXRInterface_method_set_action_set_active:
  319. .. rst-class:: classref-method
  320. void **set_action_set_active** **(** :ref:`String<class_String>` name, :ref:`bool<class_bool>` active **)**
  321. Sets the given action set as active or inactive.
  322. .. rst-class:: classref-item-separator
  323. ----
  324. .. _class_OpenXRInterface_method_set_motion_range:
  325. .. rst-class:: classref-method
  326. void **set_motion_range** **(** :ref:`Hand<enum_OpenXRInterface_Hand>` hand, :ref:`HandMotionRange<enum_OpenXRInterface_HandMotionRange>` motion_range **)**
  327. If handtracking is enabled and motion range is supported, sets the currently configured motion range for ``hand`` to ``motion_range``.
  328. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  329. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  330. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  331. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  332. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  333. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  334. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`