Class reference

OpenXRHand

Inherits Node3D

Deprecated.

Use XRHandModifier3D instead.

Node supporting hand and finger tracking in OpenXR.

Description

This node enables OpenXR's hand tracking functionality. The node should be a child node of an XROrigin3D node, tracking will update its position to the player's tracked hand Palm joint location (the center of the middle finger's metacarpal bone). This node also updates the skeleton of a properly skinned hand or avatar model. If the skeleton is a hand (one of the hand bones is the root node of the skeleton), then the skeleton will be placed relative to the hand palm location and the hand mesh and skeleton should be children of the OpenXRHand node. If the hand bones are part of a full skeleton, then the root of the hand will keep its location with the assumption that IK is used to position the hand and arm. By default the skeleton hand bones are repositioned to match the size of the tracked hand. To preserve the modeled bone sizes change bone_update to apply rotation only.

Properties

int bone_update = 0

Specify the type of updates to perform on the bone.

int hand = 0

Specifies whether this node tracks the left or right hand of the player.

NodePath hand_skeleton = NodePath("")

Set a Skeleton3D node for which the pose positions will be updated.

int motion_range = 0

Set the motion range (if supported) limiting the hand motion.

int skeleton_rig = 0

Set the type of skeleton rig the hand_skeleton is compliant with.

Constants

HAND_LEFT = 0

Enum: Hands

Tracking the player's left hand.

HAND_RIGHT = 1

Enum: Hands

Tracking the player's right hand.

HAND_MAX = 2

Enum: Hands

Maximum supported hands.

MOTION_RANGE_UNOBSTRUCTED = 0

Enum: MotionRange

When player grips, hand skeleton will form a full fist.

MOTION_RANGE_CONFORM_TO_CONTROLLER = 1

Enum: MotionRange

When player grips, hand skeleton conforms to the controller the player is holding.

MOTION_RANGE_MAX = 2

Enum: MotionRange

Maximum supported motion ranges.

SKELETON_RIG_OPENXR = 0

Enum: SkeletonRig

An OpenXR compliant skeleton.

SKELETON_RIG_MAX = 2

Enum: SkeletonRig

Maximum supported hands.

BONE_UPDATE_FULL = 0

Enum: BoneUpdate

The skeletons bones are fully updated (both position and rotation) to match the tracked bones.

BONE_UPDATE_ROTATION_ONLY = 1

Enum: BoneUpdate

The skeletons bones are only rotated to align with the tracked bones, preserving bone length.

BONE_UPDATE_MAX = 2

Enum: BoneUpdate

Maximum supported bone update mode.

Source revision 5592dc3a7a61
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.