API reference
API reference
Select your platform
No SDKs available
No versions available

OVRHumanBodyBonesMappings Class

Implements the OVRHumanBodyBonesMappingsInterface interface, and contains mappings that are relevant to retargeting by classes such as OVRUnityHumanoidSkeletonRetargeter.
This includes associations between HumanBodyBones and BoneId, HumanBodyBones and BodySection. There are also mappings between a body tracking or humanoid bone and joint pairs used for retargeting.
This is a default implementation, which means that if you have a custom character is not compatible then you will need to implement OVRHumanBodyBonesMappings separately.

Member Enumerations

Enumeration BodySection

Since humanoid characters can possibly be described as large sections, such the back, left leg, right arm, and so on, BodySection is defined to define those sections.
Use this enum to associate a body section with a character's bone.
LeftLeg
No description available
LeftFoot
No description available
RightLeg
No description available
RightFoot
No description available
LeftArm
No description available
LeftHand
No description available
RightArm
No description available
RightHand
No description available
Hips
No description available
Back
No description available
Neck
No description available
Head
No description available

Enumeration FullBodyTrackingBoneId

Body tracking bone IDs that should be exposed through the inspector.
has enum values that map to the same integers, which would not work with a serialized field that expects unique integers. is an enum that restricts BoneId to the values that are relevant for full body characters and avoids redundant values.
FullBody_Start
= OVRPlugin.BoneId.FullBody_Start
FullBody_Root
= OVRPlugin.BoneId.FullBody_Root
FullBody_Hips
= OVRPlugin.BoneId.FullBody_Hips
FullBody_SpineLower
= OVRPlugin.BoneId.FullBody_SpineLower
FullBody_SpineMiddle
= OVRPlugin.BoneId.FullBody_SpineMiddle
FullBody_SpineUpper
= OVRPlugin.BoneId.FullBody_SpineUpper
FullBody_Chest
= OVRPlugin.BoneId.FullBody_Chest
FullBody_Neck
= OVRPlugin.BoneId.FullBody_Neck
FullBody_Head
= OVRPlugin.BoneId.FullBody_Head
FullBody_LeftShoulder
= OVRPlugin.BoneId.FullBody_LeftShoulder
FullBody_LeftScapula
= OVRPlugin.BoneId.FullBody_LeftScapula
FullBody_LeftArmUpper
= OVRPlugin.BoneId.FullBody_LeftArmUpper
FullBody_LeftArmLower
= OVRPlugin.BoneId.FullBody_LeftArmLower
FullBody_LeftHandWristTwist
= OVRPlugin.BoneId.FullBody_LeftHandWristTwist
FullBody_RightShoulder
= OVRPlugin.BoneId.FullBody_RightShoulder
FullBody_RightScapula
= OVRPlugin.BoneId.FullBody_RightScapula
FullBody_RightArmUpper
= OVRPlugin.BoneId.FullBody_RightArmUpper
FullBody_RightArmLower
= OVRPlugin.BoneId.FullBody_RightArmLower
FullBody_RightHandWristTwist
= OVRPlugin.BoneId.FullBody_RightHandWristTwist
FullBody_LeftHandPalm
= OVRPlugin.BoneId.FullBody_LeftHandPalm
FullBody_LeftHandWrist
= OVRPlugin.BoneId.FullBody_LeftHandWrist
FullBody_LeftHandThumbMetacarpal
= OVRPlugin.BoneId.FullBody_LeftHandThumbMetacarpal
FullBody_LeftHandThumbProximal
= OVRPlugin.BoneId.FullBody_LeftHandThumbProximal
FullBody_LeftHandThumbDistal
= OVRPlugin.BoneId.FullBody_LeftHandThumbDistal
FullBody_LeftHandThumbTip
= OVRPlugin.BoneId.FullBody_LeftHandThumbTip
FullBody_LeftHandIndexMetacarpal
= OVRPlugin.BoneId.FullBody_LeftHandIndexMetacarpal
FullBody_LeftHandIndexProximal
= OVRPlugin.BoneId.FullBody_LeftHandIndexProximal
FullBody_LeftHandIndexIntermediate
= OVRPlugin.BoneId.FullBody_LeftHandIndexIntermediate
FullBody_LeftHandIndexDistal
= OVRPlugin.BoneId.FullBody_LeftHandIndexDistal
FullBody_LeftHandIndexTip
= OVRPlugin.BoneId.FullBody_LeftHandIndexTip
FullBody_LeftHandMiddleMetacarpal
= OVRPlugin.BoneId.FullBody_LeftHandMiddleMetacarpal
FullBody_LeftHandMiddleProximal
= OVRPlugin.BoneId.FullBody_LeftHandMiddleProximal
FullBody_LeftHandMiddleIntermediate
= OVRPlugin.BoneId.FullBody_LeftHandMiddleIntermediate
FullBody_LeftHandMiddleDistal
= OVRPlugin.BoneId.FullBody_LeftHandMiddleDistal
FullBody_LeftHandMiddleTip
= OVRPlugin.BoneId.FullBody_LeftHandMiddleTip
FullBody_LeftHandRingMetacarpal
= OVRPlugin.BoneId.FullBody_LeftHandRingMetacarpal
FullBody_LeftHandRingProximal
= OVRPlugin.BoneId.FullBody_LeftHandRingProximal
FullBody_LeftHandRingIntermediate
= OVRPlugin.BoneId.FullBody_LeftHandRingIntermediate
FullBody_LeftHandRingDistal
= OVRPlugin.BoneId.FullBody_LeftHandRingDistal
FullBody_LeftHandRingTip
= OVRPlugin.BoneId.FullBody_LeftHandRingTip
FullBody_LeftHandLittleMetacarpal
= OVRPlugin.BoneId.FullBody_LeftHandLittleMetacarpal
FullBody_LeftHandLittleProximal
= OVRPlugin.BoneId.FullBody_LeftHandLittleProximal
FullBody_LeftHandLittleIntermediate
= OVRPlugin.BoneId.FullBody_LeftHandLittleIntermediate
FullBody_LeftHandLittleDistal
= OVRPlugin.BoneId.FullBody_LeftHandLittleDistal
FullBody_LeftHandLittleTip
= OVRPlugin.BoneId.FullBody_LeftHandLittleTip
FullBody_RightHandPalm
= OVRPlugin.BoneId.FullBody_RightHandPalm
FullBody_RightHandWrist
= OVRPlugin.BoneId.FullBody_RightHandWrist
FullBody_RightHandThumbMetacarpal
= OVRPlugin.BoneId.FullBody_RightHandThumbMetacarpal
FullBody_RightHandThumbProximal
= OVRPlugin.BoneId.FullBody_RightHandThumbProximal
FullBody_RightHandThumbDistal
= OVRPlugin.BoneId.FullBody_RightHandThumbDistal
FullBody_RightHandThumbTip
= OVRPlugin.BoneId.FullBody_RightHandThumbTip
FullBody_RightHandIndexMetacarpal
= OVRPlugin.BoneId.FullBody_RightHandIndexMetacarpal
FullBody_RightHandIndexProximal
= OVRPlugin.BoneId.FullBody_RightHandIndexProximal
FullBody_RightHandIndexIntermediate
= OVRPlugin.BoneId.FullBody_RightHandIndexIntermediate
FullBody_RightHandIndexDistal
= OVRPlugin.BoneId.FullBody_RightHandIndexDistal
FullBody_RightHandIndexTip
= OVRPlugin.BoneId.FullBody_RightHandIndexTip
FullBody_RightHandMiddleMetacarpal
= OVRPlugin.BoneId.FullBody_RightHandMiddleMetacarpal
FullBody_RightHandMiddleProximal
= OVRPlugin.BoneId.FullBody_RightHandMiddleProximal
FullBody_RightHandMiddleIntermediate
= OVRPlugin.BoneId.FullBody_RightHandMiddleIntermediate
FullBody_RightHandMiddleDistal
= OVRPlugin.BoneId.FullBody_RightHandMiddleDistal
FullBody_RightHandMiddleTip
= OVRPlugin.BoneId.FullBody_RightHandMiddleTip
FullBody_RightHandRingMetacarpal
= OVRPlugin.BoneId.FullBody_RightHandRingMetacarpal
FullBody_RightHandRingProximal
= OVRPlugin.BoneId.FullBody_RightHandRingProximal
FullBody_RightHandRingIntermediate
= OVRPlugin.BoneId.FullBody_RightHandRingIntermediate
FullBody_RightHandRingDistal
= OVRPlugin.BoneId.FullBody_RightHandRingDistal
FullBody_RightHandRingTip
= OVRPlugin.BoneId.FullBody_RightHandRingTip
FullBody_RightHandLittleMetacarpal
= OVRPlugin.BoneId.FullBody_RightHandLittleMetacarpal
FullBody_RightHandLittleProximal
= OVRPlugin.BoneId.FullBody_RightHandLittleProximal
FullBody_RightHandLittleIntermediate
= OVRPlugin.BoneId.FullBody_RightHandLittleIntermediate
FullBody_RightHandLittleDistal
= OVRPlugin.BoneId.FullBody_RightHandLittleDistal
FullBody_RightHandLittleTip
= OVRPlugin.BoneId.FullBody_RightHandLittleTip
FullBody_LeftUpperLeg
= OVRPlugin.BoneId.FullBody_LeftUpperLeg
FullBody_LeftLowerLeg
= OVRPlugin.BoneId.FullBody_LeftLowerLeg
FullBody_LeftFootAnkleTwist
= OVRPlugin.BoneId.FullBody_LeftFootAnkleTwist
FullBody_LeftFootAnkle
= OVRPlugin.BoneId.FullBody_LeftFootAnkle
FullBody_LeftFootSubtalar
= OVRPlugin.BoneId.FullBody_LeftFootSubtalar
FullBody_LeftFootTransverse
= OVRPlugin.BoneId.FullBody_LeftFootTransverse
FullBody_LeftFootBall
= OVRPlugin.BoneId.FullBody_LeftFootBall
FullBody_RightUpperLeg
= OVRPlugin.BoneId.FullBody_RightUpperLeg
FullBody_RightLowerLeg
= OVRPlugin.BoneId.FullBody_RightLowerLeg
FullBody_RightFootAnkleTwist
= OVRPlugin.BoneId.FullBody_RightFootAnkleTwist
FullBody_RightFootAnkle
= OVRPlugin.BoneId.FullBody_RightFootAnkle
FullBody_RightFootSubtalar
= OVRPlugin.BoneId.FullBody_RightFootSubtalar
FullBody_RightFootTransverse
= OVRPlugin.BoneId.FullBody_RightFootTransverse
FullBody_RightFootBall
= OVRPlugin.BoneId.FullBody_RightFootBall
FullBody_End
= OVRPlugin.BoneId.FullBody_End
NoOverride
= OVRPlugin.BoneId.FullBody_End + 1
Remove
= OVRPlugin.BoneId.FullBody_End + 2

Enumeration BodyTrackingBoneId

Body tracking bone IDs that should be exposed through the inspector.
has enum values that map to the same integers, which would not work with a serialized field that expects unique integers. is an enum that restricts BoneId to the values that are relevant for full body characters and avoids redundant values.
Body_Start
= OVRPlugin.BoneId.Body_Start
Body_Root
= OVRPlugin.BoneId.Body_Root
Body_Hips
= OVRPlugin.BoneId.Body_Hips
Body_SpineLower
= OVRPlugin.BoneId.Body_SpineLower
Body_SpineMiddle
= OVRPlugin.BoneId.Body_SpineMiddle
Body_SpineUpper
= OVRPlugin.BoneId.Body_SpineUpper
Body_Chest
= OVRPlugin.BoneId.Body_Chest
Body_Neck
= OVRPlugin.BoneId.Body_Neck
Body_Head
= OVRPlugin.BoneId.Body_Head
Body_LeftShoulder
= OVRPlugin.BoneId.Body_LeftShoulder
Body_LeftScapula
= OVRPlugin.BoneId.Body_LeftScapula
Body_LeftArmUpper
= OVRPlugin.BoneId.Body_LeftArmUpper
Body_LeftArmLower
= OVRPlugin.BoneId.Body_LeftArmLower
Body_LeftHandWristTwist
= OVRPlugin.BoneId.Body_LeftHandWristTwist
Body_RightShoulder
= OVRPlugin.BoneId.Body_RightShoulder
Body_RightScapula
= OVRPlugin.BoneId.Body_RightScapula
Body_RightArmUpper
= OVRPlugin.BoneId.Body_RightArmUpper
Body_RightArmLower
= OVRPlugin.BoneId.Body_RightArmLower
Body_RightHandWristTwist
= OVRPlugin.BoneId.Body_RightHandWristTwist
Body_LeftHandPalm
= OVRPlugin.BoneId.Body_LeftHandPalm
Body_LeftHandWrist
= OVRPlugin.BoneId.Body_LeftHandWrist
Body_LeftHandThumbMetacarpal
= OVRPlugin.BoneId.Body_LeftHandThumbMetacarpal
Body_LeftHandThumbProximal
= OVRPlugin.BoneId.Body_LeftHandThumbProximal
Body_LeftHandThumbDistal
= OVRPlugin.BoneId.Body_LeftHandThumbDistal
Body_LeftHandThumbTip
= OVRPlugin.BoneId.Body_LeftHandThumbTip
Body_LeftHandIndexMetacarpal
= OVRPlugin.BoneId.Body_LeftHandIndexMetacarpal
Body_LeftHandIndexProximal
= OVRPlugin.BoneId.Body_LeftHandIndexProximal
Body_LeftHandIndexIntermediate
= OVRPlugin.BoneId.Body_LeftHandIndexIntermediate
Body_LeftHandIndexDistal
= OVRPlugin.BoneId.Body_LeftHandIndexDistal
Body_LeftHandIndexTip
= OVRPlugin.BoneId.Body_LeftHandIndexTip
Body_LeftHandMiddleMetacarpal
= OVRPlugin.BoneId.Body_LeftHandMiddleMetacarpal
Body_LeftHandMiddleProximal
= OVRPlugin.BoneId.Body_LeftHandMiddleProximal
Body_LeftHandMiddleIntermediate
= OVRPlugin.BoneId.Body_LeftHandMiddleIntermediate
Body_LeftHandMiddleDistal
= OVRPlugin.BoneId.Body_LeftHandMiddleDistal
Body_LeftHandMiddleTip
= OVRPlugin.BoneId.Body_LeftHandMiddleTip
Body_LeftHandRingMetacarpal
= OVRPlugin.BoneId.Body_LeftHandRingMetacarpal
Body_LeftHandRingProximal
= OVRPlugin.BoneId.Body_LeftHandRingProximal
Body_LeftHandRingIntermediate
= OVRPlugin.BoneId.Body_LeftHandRingIntermediate
Body_LeftHandRingDistal
= OVRPlugin.BoneId.Body_LeftHandRingDistal
Body_LeftHandRingTip
= OVRPlugin.BoneId.Body_LeftHandRingTip
Body_LeftHandLittleMetacarpal
= OVRPlugin.BoneId.Body_LeftHandLittleMetacarpal
Body_LeftHandLittleProximal
= OVRPlugin.BoneId.Body_LeftHandLittleProximal
Body_LeftHandLittleIntermediate
= OVRPlugin.BoneId.Body_LeftHandLittleIntermediate
Body_LeftHandLittleDistal
= OVRPlugin.BoneId.Body_LeftHandLittleDistal
Body_LeftHandLittleTip
= OVRPlugin.BoneId.Body_LeftHandLittleTip
Body_RightHandPalm
= OVRPlugin.BoneId.Body_RightHandPalm
Body_RightHandWrist
= OVRPlugin.BoneId.Body_RightHandWrist
Body_RightHandThumbMetacarpal
= OVRPlugin.BoneId.Body_RightHandThumbMetacarpal
Body_RightHandThumbProximal
= OVRPlugin.BoneId.Body_RightHandThumbProximal
Body_RightHandThumbDistal
= OVRPlugin.BoneId.Body_RightHandThumbDistal
Body_RightHandThumbTip
= OVRPlugin.BoneId.Body_RightHandThumbTip
Body_RightHandIndexMetacarpal
= OVRPlugin.BoneId.Body_RightHandIndexMetacarpal
Body_RightHandIndexProximal
= OVRPlugin.BoneId.Body_RightHandIndexProximal
Body_RightHandIndexIntermediate
= OVRPlugin.BoneId.Body_RightHandIndexIntermediate
Body_RightHandIndexDistal
= OVRPlugin.BoneId.Body_RightHandIndexDistal
Body_RightHandIndexTip
= OVRPlugin.BoneId.Body_RightHandIndexTip
Body_RightHandMiddleMetacarpal
= OVRPlugin.BoneId.Body_RightHandMiddleMetacarpal
Body_RightHandMiddleProximal
= OVRPlugin.BoneId.Body_RightHandMiddleProximal
Body_RightHandMiddleIntermediate
= OVRPlugin.BoneId.Body_RightHandMiddleIntermediate
Body_RightHandMiddleDistal
= OVRPlugin.BoneId.Body_RightHandMiddleDistal
Body_RightHandMiddleTip
= OVRPlugin.BoneId.Body_RightHandMiddleTip
Body_RightHandRingMetacarpal
= OVRPlugin.BoneId.Body_RightHandRingMetacarpal
Body_RightHandRingProximal
= OVRPlugin.BoneId.Body_RightHandRingProximal
Body_RightHandRingIntermediate
= OVRPlugin.BoneId.Body_RightHandRingIntermediate
Body_RightHandRingDistal
= OVRPlugin.BoneId.Body_RightHandRingDistal
Body_RightHandRingTip
= OVRPlugin.BoneId.Body_RightHandRingTip
Body_RightHandLittleMetacarpal
= OVRPlugin.BoneId.Body_RightHandLittleMetacarpal
Body_RightHandLittleProximal
= OVRPlugin.BoneId.Body_RightHandLittleProximal
Body_RightHandLittleIntermediate
= OVRPlugin.BoneId.Body_RightHandLittleIntermediate
Body_RightHandLittleDistal
= OVRPlugin.BoneId.Body_RightHandLittleDistal
Body_RightHandLittleTip
= OVRPlugin.BoneId.Body_RightHandLittleTip
Body_End
= OVRPlugin.BoneId.Body_End
NoOverride
= OVRPlugin.BoneId.Body_End + 1
Remove
= OVRPlugin.BoneId.Body_End + 2

Properties

The mapping between HumanBodyBones a tuple of HumanBodyBones.
The tuple is a joint pair that retargeting uses to create a HumanBodyBones's orientation during runtime. Define this field so that you can influence what kind of tuple is used during retargeting.
The mapping between HumanBodyBones and BodySection.
Define this mapping to associate a body with parts of the body, such as the back, left arm, right leg, and so on.
Returns to mapping for full body characters.
Since retargeting retargets to humanoid characters, it uses this field to map body tracking bones to humanoid bones.
Returns to mapping for upper body characters.
Since retargeting retargets to humanoid characters, it uses this field to map body tracking bones to humanoid bones.
The mapping between BoneId a tuple of BoneId.
Retargeting uses this tuple or joint pair to create a BoneId's orientation during retargeting. Define this field so that you can influence what kind of tuple is used during retargeting. Intended for the retargeting source (i.e. body tracking) assuming full body tracking is used.
The mapping between BoneId a tuple of BoneId.
Retargeting uses this tuple or joint pair to create a BoneId's orientation during retargeting. Define this field so that you can influence what kind of tuple is used during retargeting. Intended for the retargeting source (i.e. body tracking) assuming upper body tracking is used.

Public Statics

The map associates a pair of bones for each HumanBodyBones.
Retargeters such as OVRUnityHumanoidSkeletonRetargeter and OVRSkeletonMetadata use these pairs to creates axes for the purposes of retargeting.
Maps HumanBodyBones to BodySection.
Use this to determine which part of the body (i.e. back) corresponds with a humanoid bone.
Maps full body body tracking bones with HumanBodyBones bones.
Use this field to retarget from a body tracking to its humanoid equivalent.
Maps upper body body tracking bones with HumanBodyBones bones.
Use this field to retarget from a body tracking to its humanoid equivalent.
The map associates a pair of bones for each OVRSkeleton.BoneId.
Retargeters such as OVRUnityHumanoidSkeletonRetargeter and OVRSkeletonMetadata use these pairs to creates axes for the purposes of retargeting. Intended for full body tracking.
The map associates a pair of bones for each OVRSkeleton.BoneId.
Retargeters such as OVRUnityHumanoidSkeletonRetargeter and OVRSkeletonMetadata use these pairs to creates axes for the purposes of retargeting. Intended for half body tracking.
Did you find this page helpful?
Thumbs up icon
Thumbs down icon