C Specification
An application can inspect whether the system is capable of hand tracking meshes by chaining an XrSystemHandTrackingMeshPropertiesMSFT structure to the XrSystemProperties when calling xrGetSystemProperties.
// Provided by XR_MSFT_hand_tracking_mesh
typedef struct XrSystemHandTrackingMeshPropertiesMSFT {
XrStructureType type;
void* next;
XrBool32 supportsHandTrackingMesh;
uint32_t maxHandMeshIndexCount;
uint32_t maxHandMeshVertexCount;
} XrSystemHandTrackingMeshPropertiesMSFT;
Members
Description
If a runtime returns XR_FALSE
for supportsHandTrackingMesh
, the
system does not support hand tracking mesh input, and therefore must return
XR_ERROR_FEATURE_UNSUPPORTED
from xrCreateHandMeshSpaceMSFT and
xrUpdateHandMeshMSFT.
The application should avoid using hand mesh functionality when
supportsHandTrackingMesh
is XR_FALSE
.
If a runtime returns XR_TRUE
for supportsHandTrackingMesh
, the
system supports hand tracking mesh input.
In this case, the runtime must return a positive number for
maxHandMeshIndexCount
and maxHandMeshVertexCount
.
An application should use maxHandMeshIndexCount
and
maxHandMeshVertexCount
to preallocate hand mesh buffers and reuse them
in their render loop when calling xrUpdateHandMeshMSFT every frame.
See Also
Document Notes
For more information, see the OpenXR Specification
This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright 2014-2023 The Khronos Group Inc.
This work is licensed under a Creative Commons Attribution 4.0 International License.