Class reference

XRBodyTracker

Inherits XRPositionalTracker

Experimental.

A tracked body in XR.

Description

A body tracking system will create an instance of this object and add it to the XRServer. This tracking system will then obtain skeleton data, convert it to the Redot Humanoid skeleton and store this data on the XRBodyTracker object. Use XRBodyModifier3D to animate a body mesh using body tracking data.

Properties

int body_flags = 0

The type of body tracking data captured.

bool has_tracking_data = false

If true, the body tracking data is valid.

Methods

int get_joint_flags(int joint) const

Returns flags about the validity of the tracking data for the given body joint.

Transform3D get_joint_transform(int joint) const

Returns the transform for the given body joint.

void set_joint_flags(int joint, int flags)

Sets flags about the validity of the tracking data for the given body joint.

void set_joint_transform(int joint, Transform3D transform)

Sets the transform for the given body joint.

Constants

BODY_FLAG_UPPER_BODY_SUPPORTED = 1

Enum: BodyFlags

Upper body tracking supported.

BODY_FLAG_LOWER_BODY_SUPPORTED = 2

Enum: BodyFlags

Lower body tracking supported.

BODY_FLAG_HANDS_SUPPORTED = 4

Enum: BodyFlags

Hand tracking supported.

JOINT_ROOT = 0

Enum: Joint

Root joint.

JOINT_HIPS = 1

Enum: Joint

Hips joint.

JOINT_SPINE = 2

Enum: Joint

Spine joint.

JOINT_CHEST = 3

Enum: Joint

Chest joint.

JOINT_UPPER_CHEST = 4

Enum: Joint

Upper chest joint.

JOINT_NECK = 5

Enum: Joint

Neck joint.

JOINT_HEAD = 6

Enum: Joint

Head joint.

JOINT_HEAD_TIP = 7

Enum: Joint

Head tip joint.

JOINT_LEFT_SHOULDER = 8

Enum: Joint

Left shoulder joint.

JOINT_LEFT_UPPER_ARM = 9

Enum: Joint

Left upper arm joint.

JOINT_LEFT_LOWER_ARM = 10

Enum: Joint

Left lower arm joint.

JOINT_RIGHT_SHOULDER = 11

Enum: Joint

Right shoulder joint.

JOINT_RIGHT_UPPER_ARM = 12

Enum: Joint

Right upper arm joint.

JOINT_RIGHT_LOWER_ARM = 13

Enum: Joint

Right lower arm joint.

JOINT_LEFT_UPPER_LEG = 14

Enum: Joint

Left upper leg joint.

JOINT_LEFT_LOWER_LEG = 15

Enum: Joint

Left lower leg joint.

JOINT_LEFT_FOOT = 16

Enum: Joint

Left foot joint.

JOINT_LEFT_TOES = 17

Enum: Joint

Left toes joint.

JOINT_RIGHT_UPPER_LEG = 18

Enum: Joint

Right upper leg joint.

JOINT_RIGHT_LOWER_LEG = 19

Enum: Joint

Right lower leg joint.

JOINT_RIGHT_FOOT = 20

Enum: Joint

Right foot joint.

JOINT_RIGHT_TOES = 21

Enum: Joint

Right toes joint.

JOINT_LEFT_HAND = 22

Enum: Joint

Left hand joint.

JOINT_LEFT_PALM = 23

Enum: Joint

Left palm joint.

JOINT_LEFT_WRIST = 24

Enum: Joint

Left wrist joint.

JOINT_LEFT_THUMB_METACARPAL = 25

Enum: Joint

Left thumb metacarpal joint.

JOINT_LEFT_THUMB_PHALANX_PROXIMAL = 26

Enum: Joint

Left thumb phalanx proximal joint.

JOINT_LEFT_THUMB_PHALANX_DISTAL = 27

Enum: Joint

Left thumb phalanx distal joint.

JOINT_LEFT_THUMB_TIP = 28

Enum: Joint

Left thumb tip joint.

JOINT_LEFT_INDEX_FINGER_METACARPAL = 29

Enum: Joint

Left index finger metacarpal joint.

JOINT_LEFT_INDEX_FINGER_PHALANX_PROXIMAL = 30

Enum: Joint

Left index finger phalanx proximal joint.

JOINT_LEFT_INDEX_FINGER_PHALANX_INTERMEDIATE = 31

Enum: Joint

Left index finger phalanx intermediate joint.

JOINT_LEFT_INDEX_FINGER_PHALANX_DISTAL = 32

Enum: Joint

Left index finger phalanx distal joint.

JOINT_LEFT_INDEX_FINGER_TIP = 33

Enum: Joint

Left index finger tip joint.

JOINT_LEFT_MIDDLE_FINGER_METACARPAL = 34

Enum: Joint

Left middle finger metacarpal joint.

JOINT_LEFT_MIDDLE_FINGER_PHALANX_PROXIMAL = 35

Enum: Joint

Left middle finger phalanx proximal joint.

JOINT_LEFT_MIDDLE_FINGER_PHALANX_INTERMEDIATE = 36

Enum: Joint

Left middle finger phalanx intermediate joint.

JOINT_LEFT_MIDDLE_FINGER_PHALANX_DISTAL = 37

Enum: Joint

Left middle finger phalanx distal joint.

JOINT_LEFT_MIDDLE_FINGER_TIP = 38

Enum: Joint

Left middle finger tip joint.

JOINT_LEFT_RING_FINGER_METACARPAL = 39

Enum: Joint

Left ring finger metacarpal joint.

JOINT_LEFT_RING_FINGER_PHALANX_PROXIMAL = 40

Enum: Joint

Left ring finger phalanx proximal joint.

JOINT_LEFT_RING_FINGER_PHALANX_INTERMEDIATE = 41

Enum: Joint

Left ring finger phalanx intermediate joint.

JOINT_LEFT_RING_FINGER_PHALANX_DISTAL = 42

Enum: Joint

Left ring finger phalanx distal joint.

JOINT_LEFT_RING_FINGER_TIP = 43

Enum: Joint

Left ring finger tip joint.

JOINT_LEFT_PINKY_FINGER_METACARPAL = 44

Enum: Joint

Left pinky finger metacarpal joint.

JOINT_LEFT_PINKY_FINGER_PHALANX_PROXIMAL = 45

Enum: Joint

Left pinky finger phalanx proximal joint.

JOINT_LEFT_PINKY_FINGER_PHALANX_INTERMEDIATE = 46

Enum: Joint

Left pinky finger phalanx intermediate joint.

JOINT_LEFT_PINKY_FINGER_PHALANX_DISTAL = 47

Enum: Joint

Left pinky finger phalanx distal joint.

JOINT_LEFT_PINKY_FINGER_TIP = 48

Enum: Joint

Left pinky finger tip joint.

JOINT_RIGHT_HAND = 49

Enum: Joint

Right hand joint.

JOINT_RIGHT_PALM = 50

Enum: Joint

Right palm joint.

JOINT_RIGHT_WRIST = 51

Enum: Joint

Right wrist joint.

JOINT_RIGHT_THUMB_METACARPAL = 52

Enum: Joint

Right thumb metacarpal joint.

JOINT_RIGHT_THUMB_PHALANX_PROXIMAL = 53

Enum: Joint

Right thumb phalanx proximal joint.

JOINT_RIGHT_THUMB_PHALANX_DISTAL = 54

Enum: Joint

Right thumb phalanx distal joint.

JOINT_RIGHT_THUMB_TIP = 55

Enum: Joint

Right thumb tip joint.

JOINT_RIGHT_INDEX_FINGER_METACARPAL = 56

Enum: Joint

Right index finger metacarpal joint.

JOINT_RIGHT_INDEX_FINGER_PHALANX_PROXIMAL = 57

Enum: Joint

Right index finger phalanx proximal joint.

JOINT_RIGHT_INDEX_FINGER_PHALANX_INTERMEDIATE = 58

Enum: Joint

Right index finger phalanx intermediate joint.

JOINT_RIGHT_INDEX_FINGER_PHALANX_DISTAL = 59

Enum: Joint

Right index finger phalanx distal joint.

JOINT_RIGHT_INDEX_FINGER_TIP = 60

Enum: Joint

Right index finger tip joint.

JOINT_RIGHT_MIDDLE_FINGER_METACARPAL = 61

Enum: Joint

Right middle finger metacarpal joint.

JOINT_RIGHT_MIDDLE_FINGER_PHALANX_PROXIMAL = 62

Enum: Joint

Right middle finger phalanx proximal joint.

JOINT_RIGHT_MIDDLE_FINGER_PHALANX_INTERMEDIATE = 63

Enum: Joint

Right middle finger phalanx intermediate joint.

JOINT_RIGHT_MIDDLE_FINGER_PHALANX_DISTAL = 64

Enum: Joint

Right middle finger phalanx distal joint.

JOINT_RIGHT_MIDDLE_FINGER_TIP = 65

Enum: Joint

Right middle finger tip joint.

JOINT_RIGHT_RING_FINGER_METACARPAL = 66

Enum: Joint

Right ring finger metacarpal joint.

JOINT_RIGHT_RING_FINGER_PHALANX_PROXIMAL = 67

Enum: Joint

Right ring finger phalanx proximal joint.

JOINT_RIGHT_RING_FINGER_PHALANX_INTERMEDIATE = 68

Enum: Joint

Right ring finger phalanx intermediate joint.

JOINT_RIGHT_RING_FINGER_PHALANX_DISTAL = 69

Enum: Joint

Right ring finger phalanx distal joint.

JOINT_RIGHT_RING_FINGER_TIP = 70

Enum: Joint

Right ring finger tip joint.

JOINT_RIGHT_PINKY_FINGER_METACARPAL = 71

Enum: Joint

Right pinky finger metacarpal joint.

JOINT_RIGHT_PINKY_FINGER_PHALANX_PROXIMAL = 72

Enum: Joint

Right pinky finger phalanx proximal joint.

JOINT_RIGHT_PINKY_FINGER_PHALANX_INTERMEDIATE = 73

Enum: Joint

Right pinky finger phalanx intermediate joint.

JOINT_RIGHT_PINKY_FINGER_PHALANX_DISTAL = 74

Enum: Joint

Right pinky finger phalanx distal joint.

JOINT_RIGHT_PINKY_FINGER_TIP = 75

Enum: Joint

Right pinky finger tip joint.

JOINT_LOWER_CHEST = 76

Enum: Joint

Lower chest joint.

JOINT_LEFT_SCAPULA = 77

Enum: Joint

Left scapula joint.

JOINT_LEFT_WRIST_TWIST = 78

Enum: Joint

Left wrist twist joint.

JOINT_RIGHT_SCAPULA = 79

Enum: Joint

Right scapula joint.

JOINT_RIGHT_WRIST_TWIST = 80

Enum: Joint

Right wrist twist joint.

JOINT_LEFT_FOOT_TWIST = 81

Enum: Joint

Left foot twist joint.

JOINT_LEFT_HEEL = 82

Enum: Joint

Left heel joint.

JOINT_LEFT_MIDDLE_FOOT = 83

Enum: Joint

Left middle foot joint.

JOINT_RIGHT_FOOT_TWIST = 84

Enum: Joint

Right foot twist joint.

JOINT_RIGHT_HEEL = 85

Enum: Joint

Right heel joint.

JOINT_RIGHT_MIDDLE_FOOT = 86

Enum: Joint

Right middle foot joint.

JOINT_MAX = 87

Enum: Joint

Represents the size of the Joint enum.

JOINT_FLAG_ORIENTATION_VALID = 1

Enum: JointFlags

The joint's orientation data is valid.

JOINT_FLAG_ORIENTATION_TRACKED = 2

Enum: JointFlags

The joint's orientation is actively tracked. May not be set if tracking has been temporarily lost.

JOINT_FLAG_POSITION_VALID = 4

Enum: JointFlags

The joint's position data is valid.

JOINT_FLAG_POSITION_TRACKED = 8

Enum: JointFlags

The joint's position is actively tracked. May not be set if tracking has been temporarily lost.

Tutorials

Source revision 4f5b14abade2
Connection interrupted. Reload×

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.