C Specification

This extension defines 24 body joints. The body joints are sorted starting from the XR_BODY_JOINT_PELVIS_BD and then incrementing in a spiral manner.

Convention of body joints

// Provided by XR_BD_body_tracking
typedef enum XrBodyJointBD {
    XR_BODY_JOINT_PELVIS_BD = 0,
    XR_BODY_JOINT_LEFT_HIP_BD = 1,
    XR_BODY_JOINT_RIGHT_HIP_BD = 2,
    XR_BODY_JOINT_SPINE1_BD = 3,
    XR_BODY_JOINT_LEFT_KNEE_BD = 4,
    XR_BODY_JOINT_RIGHT_KNEE_BD = 5,
    XR_BODY_JOINT_SPINE2_BD = 6,
    XR_BODY_JOINT_LEFT_ANKLE_BD = 7,
    XR_BODY_JOINT_RIGHT_ANKLE_BD = 8,
    XR_BODY_JOINT_SPINE3_BD = 9,
    XR_BODY_JOINT_LEFT_FOOT_BD = 10,
    XR_BODY_JOINT_RIGHT_FOOT_BD = 11,
    XR_BODY_JOINT_NECK_BD = 12,
    XR_BODY_JOINT_LEFT_COLLAR_BD = 13,
    XR_BODY_JOINT_RIGHT_COLLAR_BD = 14,
    XR_BODY_JOINT_HEAD_BD = 15,
    XR_BODY_JOINT_LEFT_SHOULDER_BD = 16,
    XR_BODY_JOINT_RIGHT_SHOULDER_BD = 17,
    XR_BODY_JOINT_LEFT_ELBOW_BD = 18,
    XR_BODY_JOINT_RIGHT_ELBOW_BD = 19,
    XR_BODY_JOINT_LEFT_WRIST_BD = 20,
    XR_BODY_JOINT_RIGHT_WRIST_BD = 21,
    XR_BODY_JOINT_LEFT_HAND_BD = 22,
    XR_BODY_JOINT_RIGHT_HAND_BD = 23,
    XR_BODY_JOINT_MAX_ENUM_BD = 0x7FFFFFFF
} XrBodyJointBD;

Description

Put body in a T-shape as above. The backward (+Z) direction is perpendicular to body surface and pointing towards the back of the body. The right (+X) direction points to the right side of the body. The Y direction is perpendicular to the X and Z directions and follows the right hand rule.

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 2014-2025 The Khronos Group Inc.