OVRUnityHumanoidSkeletonRetargeter
()
|
Default constructor for the retargeter class that initializes the instance's skeleton type to match half body tracking.
Signature
OVRUnityHumanoidSkeletonRetargeter() |
_adjustments
: JointAdjustment[] |
Signature
JointAdjustment [] _adjustments |
_bodySectionsToAlign
: OVRHumanBodyBonesMappings.BodySection[] |
Signature
OVRHumanBodyBonesMappings.BodySection [] _bodySectionsToAlign |
_bodySectionToPosition
: OVRHumanBodyBonesMappings.BodySection[] |
Signature
OVRHumanBodyBonesMappings.BodySection [] _bodySectionToPosition |
_fullBodySectionsToAlign
: OVRHumanBodyBonesMappings.BodySection[] |
Signature
OVRHumanBodyBonesMappings.BodySection [] _fullBodySectionsToAlign |
_fullBodySectionToPosition
: OVRHumanBodyBonesMappings.BodySection[] |
Signature
OVRHumanBodyBonesMappings.BodySection [] _fullBodySectionToPosition |
_updateType
: UpdateType |
Controls if we run retargeting from FixedUpdate, Update, or both, and is based on the enum OVRUnityHumanoidSkeletonRetargeter.UpdateType.
Signature
UpdateType _updateType |
Adjustments
: JointAdjustment[]
[Get] |
Signature
JointAdjustment [] Adjustments |
AnimatorTargetSkeleton
: Animator
[Get] |
Signature
Animator AnimatorTargetSkeleton |
BodySectionsToAlign
: OVRHumanBodyBonesMappings.BodySection[]
[Get] |
Signature
OVRHumanBodyBonesMappings.BodySection [] BodySectionsToAlign |
BodySectionToPosition
: OVRHumanBodyBonesMappings.BodySection[]
[Get] |
Signature
OVRHumanBodyBonesMappings.BodySection [] BodySectionToPosition |
CustomBoneIdToHumanBodyBone
: Dictionary< BoneId, HumanBodyBones >
[Get] |
Signature
Dictionary<BoneId, HumanBodyBones> CustomBoneIdToHumanBodyBone |
FullBodySectionsToAlign
: OVRHumanBodyBonesMappings.BodySection[]
[Get] |
Signature
OVRHumanBodyBonesMappings.BodySection [] FullBodySectionsToAlign |
FullBodySectionToPosition
: OVRHumanBodyBonesMappings.BodySection[]
[Get] |
Signature
OVRHumanBodyBonesMappings.BodySection [] FullBodySectionToPosition |
SourceSkeletonData
: OVRSkeletonMetadata
[Get] |
Signature
OVRSkeletonMetadata SourceSkeletonData |
SourceSkeletonTPoseData
: OVRSkeletonMetadata
[Get] |
Signature
OVRSkeletonMetadata SourceSkeletonTPoseData |
TargetSkeletonData
: OVRSkeletonMetadata
[Get] |
Signature
OVRSkeletonMetadata TargetSkeletonData |
TargetTPoseRotations
: Dictionary< HumanBodyBones, Quaternion >
[Get] |
Signature
Dictionary<HumanBodyBones, Quaternion> TargetTPoseRotations |
BodyBoneMappingsInterface
: OVRHumanBodyBonesMappingsInterface
[Get][Set] |
This returns body bone mappings, based on OVRHumanBodyBonesMappingsInterface.
Use this field in case the default mappings fall short and you wish to override them with a custom one that works with a specific characters.
Signature
OVRHumanBodyBonesMappingsInterface BodyBoneMappingsInterface |
ComputeOffsetsUsingSkeletonComponent
()
|
Compute skeletal offsets using the current input skeletal data and the target skeletal data.
Signature
void ComputeOffsetsUsingSkeletonComponent() Returns void |
FindAdjustment
(
boneId
)
|
Signature
JointAdjustment FindAdjustment(HumanBodyBones boneId) Parameters boneId: HumanBodyBonesReturns JointAdjustment |
OffsetComputationNeededThisFrame
()
|
Indicates if skeletal offsets will be computed during this frame.
This usually happens if there is a change in the input skeletal data, a change in the target skeletal scale, et cetera.
Signature
bool OffsetComputationNeededThisFrame() Returns bool
True if computation is required; false if not.
|
OnValidate
()
|
Signature
virtual void OnValidate() Returns void |
RecomputeSkeletalOffsetsIfNecessary
()
|
Signature
void RecomputeSkeletalOffsetsIfNecessary() Returns void |
ShouldRunUpdateThisFrame
()
|
Signature
bool ShouldRunUpdateThisFrame() Returns bool |
Start
()
|
Start this instance.
Initialize data structures related to the body tracking's skeleton.
Signature
override void Start() Returns override void |
Update
()
|
Signature
override void Update() Returns override void |
IsBodySectionInArray
(
bodySectionToCheck
, sectionArrayToCheck
)
|
Signature
static bool IsBodySectionInArray(OVRHumanBodyBonesMappings.BodySection bodySectionToCheck, OVRHumanBodyBonesMappings.BodySection[] sectionArrayToCheck) Parameters bodySectionToCheck: OVRHumanBodyBonesMappings.BodySectionsectionArrayToCheck: OVRHumanBodyBonesMappings.BodySection[]Returns bool |
BoneIdOverrideValue
: OVRHumanBodyBonesMappings.BodyTrackingBoneId |
Allows mapping this human body bone to a (half body) OVRSkeleton bone different from the standard value.
An OVRHumanBodyBonesMappings.BodyTrackingBoneId.NoOverride value indicates to not override the default mapping; OVRHumanBodyBonesMappings.BodyTrackingBoneId.Remove means to exclude the bone from retargeting. This cannot be changed at runtime.
Signature
OVRHumanBodyBonesMappings.BodyTrackingBoneId BoneIdOverrideValue |
DisablePositionTransform
: bool |
Use this to disable positional retargeting on the target joint, so that the target's position values are not affected by body tracking.
Signature
bool DisablePositionTransform |
DisableRotationTransform
: bool |
Use this to disable rotational retargeting on the target joint, so that the target's rotation values are not affected by body tracking.
Signature
bool DisableRotationTransform |
FullBodyBoneIdOverrideValue
: OVRHumanBodyBonesMappings.FullBodyTrackingBoneId |
Allows mapping this human body bone to a (full body) OVRSkeleton bone different from the standard value.
An OVRHumanBodyBonesMappings.FullBodyTrackingBoneId.NoOverride value indicates to not override the default mapping; OVRHumanBodyBonesMappings.FullBodyTrackingBoneId.Remove means to exclude the bone from retargeting. This cannot be changed at runtime.
Signature
OVRHumanBodyBonesMappings.FullBodyTrackingBoneId FullBodyBoneIdOverrideValue |
Joint
: HumanBodyBones |
Maps to the Unity Humanoid joint that can be adjusted using position or rotation-based tweaks.
Signature
HumanBodyBones Joint |
PositionChange
: Vector3 |
The position change to apply to the joint, post-retargeting, in world-space.
Defaults to the zero vector.
Signature
Vector3 PositionChange |
RotationChange
: Quaternion |
The rotation change to apply to the joint, post-retargeting, in world-space.
Defaults to the Quaternion identity. NOTE: This is deprecated, please use .
Signature
Quaternion RotationChange |
RotationTweaks
: Quaternion[] |
Allows accumulating a series of rotations to be applied to a joint, post-retargeting.
These values are accumulated and stored in JointAdjustment.PrecomputedRotationTweaks.
Signature
Quaternion [] RotationTweaks |
PrecomputedRotationTweaks
: Quaternion
[Get] |
Precomputed accumulated rotations, derived from JointAdjustment.RotationTweaks.
Signature
Quaternion PrecomputedRotationTweaks |
PrecomputeRotationTweaks
()
|
Precompute rotation tweaks by accumulating them and storing them into JointAdjustment.PrecomputedRotationTweaks.
Using the precomputed value is faster at runtime than accumulating the quaternions during each frame.
Signature
void PrecomputeRotationTweaks() Returns void |
BoneIdToHumanBodyBone
: readonly Dictionary< OVRSkeleton.BoneId, HumanBodyBones > |
Maps upper body body tracking bones with HumanBodyBones bones.
Use this field to retarget from a body tracking to its humanoid equivalent.
Signature
readonly Dictionary<OVRSkeleton.BoneId, HumanBodyBones> BoneIdToHumanBodyBone |
BoneIdToJointPair
: readonly Dictionary< OVRSkeleton.BoneId, Tuple< OVRSkeleton.BoneId, OVRSkeleton.BoneId > > |
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.
Signature
readonly Dictionary<OVRSkeleton.BoneId, Tuple<OVRSkeleton.BoneId, OVRSkeleton.BoneId> > BoneIdToJointPair |
BoneToBodySection
: readonly Dictionary< HumanBodyBones, BodySection > |
Maps HumanBodyBones to BodySection.
Use this to determine which part of the body (i.e. back) corresponds with a humanoid bone.
Signature
readonly Dictionary<HumanBodyBones, BodySection> BoneToBodySection |
BoneToJointPair
: readonly Dictionary< HumanBodyBones, Tuple< HumanBodyBones, HumanBodyBones > > |
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.
Signature
readonly Dictionary<HumanBodyBones, Tuple<HumanBodyBones, HumanBodyBones> > BoneToJointPair |
FullBodyBoneIdToHumanBodyBone
: readonly Dictionary< OVRSkeleton.BoneId, HumanBodyBones > |
Maps full body body tracking bones with HumanBodyBones bones.
Use this field to retarget from a body tracking to its humanoid equivalent.
Signature
readonly Dictionary<OVRSkeleton.BoneId, HumanBodyBones> FullBodyBoneIdToHumanBodyBone |
FullBoneIdToJointPair
: readonly Dictionary< OVRSkeleton.BoneId, Tuple< OVRSkeleton.BoneId, OVRSkeleton.BoneId > > |
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.
Signature
readonly Dictionary<OVRSkeleton.BoneId, Tuple<OVRSkeleton.BoneId, OVRSkeleton.BoneId> > FullBoneIdToJointPair |
GetBoneIdToHumanBodyBone
: Dictionary< OVRSkeleton.BoneId, HumanBodyBones >
[Get] |
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.
Signature
Dictionary<OVRSkeleton.BoneId, HumanBodyBones> GetBoneIdToHumanBodyBone |
GetBoneIdToJointPair
: Dictionary< OVRSkeleton.BoneId, Tuple< OVRSkeleton.BoneId, OVRSkeleton.BoneId > >
[Get] |
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.
Signature
Dictionary<OVRSkeleton.BoneId, Tuple<OVRSkeleton.BoneId, OVRSkeleton.BoneId> > GetBoneIdToJointPair |
GetBoneToBodySection
: Dictionary< HumanBodyBones, BodySection >
[Get] |
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.
Signature
Dictionary<HumanBodyBones, BodySection> GetBoneToBodySection |
GetBoneToJointPair
: Dictionary< HumanBodyBones, Tuple< HumanBodyBones, HumanBodyBones > >
[Get] |
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.
Signature
Dictionary<HumanBodyBones, Tuple<HumanBodyBones, HumanBodyBones> > GetBoneToJointPair |
GetFullBodyBoneIdToHumanBodyBone
: Dictionary< OVRSkeleton.BoneId, HumanBodyBones >
[Get] |
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.
Signature
Dictionary<OVRSkeleton.BoneId, HumanBodyBones> GetFullBodyBoneIdToHumanBodyBone |
GetFullBodyBoneIdToJointPair
: Dictionary< OVRSkeleton.BoneId, Tuple< OVRSkeleton.BoneId, OVRSkeleton.BoneId > >
[Get] |
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.
Signature
Dictionary<OVRSkeleton.BoneId, Tuple<OVRSkeleton.BoneId, OVRSkeleton.BoneId> > GetFullBodyBoneIdToJointPair |
| Member |
|---|
LeftLeg |
LeftFoot |
RightLeg |
RightFoot |
LeftArm |
LeftHand |
RightArm |
RightHand |
Hips |
Back |
Neck |
Head |
| Member | Value |
|---|---|
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 |
| Member | Value |
|---|---|
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 |
OVRSkeletonMetadata
(
otherSkeletonMetaData
)
|
Copy constructor that copies from another instance of OVRSkeletonMetadata to this instance.
Since each instance tracks data per HumanBodyBones and possibly modifies, that should be copied from the other OVRSkeletonMetadata instance.
Signature
OVRSkeletonMetadata(OVRSkeletonMetadata otherSkeletonMetaData) Parameters otherSkeletonMetaData: OVRSkeletonMetadata
Other meta data to copy from.
|
OVRSkeletonMetadata
(
animator
, bodyBonesMappingInterface
)
|
Constructor that builds an instance from an Animator reference, along with an optional OVRHumanBodyBonesMappingsInterface argument.
Use this constructor for third-party characters imported as a Humanoid. remarks> Provide the OVRHumanBodyBonesMappingsInterface argument in order to influence the creation of each joint's bone pair.
Signature
OVRSkeletonMetadata(Animator animator, OVRHumanBodyBonesMappingsInterface bodyBonesMappingInterface=null) Parameters animator: Animator
Animator to build meta data from.
|
OVRSkeletonMetadata
(
skeleton
, useBindPose
, customBoneIdToHumanBodyBone
, bodyBonesMappingInterface
)
|
Constructor that builds an instance from a OVRSkeleton reference, intended for upper body characters.
Use the OVRHumanBodyBonesMappingsInterface reference in order to the influence hte creation each joint's bone pair.
Use the BoneId to HumanBodyBones mapping in order influence the mapping between the two, because the body tracking bones must be associated with Humanoid bones.
Signature
OVRSkeletonMetadata(OVRSkeleton skeleton, bool useBindPose, Dictionary< BoneId, HumanBodyBones > customBoneIdToHumanBodyBone, OVRHumanBodyBonesMappingsInterface bodyBonesMappingInterface) Parameters useBindPose: bool
Whether to use bind pose (T-pose) or not.
customBoneIdToHumanBodyBone: Dictionary< BoneId, HumanBodyBones >
Custom bone ID to human body bone mapping.
|
OVRSkeletonMetadata
(
skeleton
, useBindPose
, customBoneIdToHumanBodyBone
, useFullBody
, bodyBonesMappingInterface
)
|
Constructor that builds an instance from a OVRSkeleton reference, intended for upper or full body characters.
Use the OVRHumanBodyBonesMappingsInterface reference in order to the influence hte creation each joint's bone pair.
Use the BoneId to HumanBodyBones mapping in order influence the mapping between the two, because the body tracking bones must be associated with Humanoid bones.
Signature
OVRSkeletonMetadata(OVRSkeleton skeleton, bool useBindPose, Dictionary< BoneId, HumanBodyBones > customBoneIdToHumanBodyBone, bool useFullBody, OVRHumanBodyBonesMappingsInterface bodyBonesMappingInterface) Parameters useBindPose: bool
Whether to use bind pose (T-pose) or not.
customBoneIdToHumanBodyBone: Dictionary< BoneId, HumanBodyBones >
Custom bone ID to human body bone mapping.
useFullBody: bool
Whether to use full body or not.
|
BodyToBoneData
: Dictionary< HumanBodyBones, BoneData >
[Get] |
Maps from HumanBodyBones to associated BoneData.
Use this field to query the original transform, orientation, and correction (i.e. retargeting) quaternion associated with the HumanBodyBones.
Signature
Dictionary<HumanBodyBones, BoneData> BodyToBoneData |
BuildBoneDataSkeleton
(
skeleton
, useBindPose
, customBoneIdToHumanBodyBone
, bodyBonesMappingInterface
)
|
Builds the metadata necessary for retargeting to function properly.
While this function is called during the construction of the instance, it is necessary before the retargeter computes its offsets. Call this function during skeletal update events before computing retargeting offsets.
Intended for upper body characters, and used by OVRUnityHumanoidSkeletonRetargeter.
Signature
void BuildBoneDataSkeleton(OVRSkeleton skeleton, bool useBindPose, Dictionary< BoneId, HumanBodyBones > customBoneIdToHumanBodyBone, OVRHumanBodyBonesMappingsInterface bodyBonesMappingInterface) Parameters useBindPose: bool
If true, use the bind pose.
customBoneIdToHumanBodyBone: Dictionary< BoneId, HumanBodyBones >
Custom bone ID to human body bone mapping.
Returns void |
BuildBoneDataSkeletonFullBody
(
skeleton
, useBindPose
, customBoneIdToHumanBodyBone
, bodyBonesMappingInterface
)
|
Builds the metadata necessary for retargeting to function properly.
While this function is called during the construction of the instance, it is necessary before the retargeter computes its offsets. Call this function during skeletal update events before computing retargeting offsets.
Intended for full body characters, and used by OVRUnityHumanoidSkeletonRetargeter.
Signature
void BuildBoneDataSkeletonFullBody(OVRSkeleton skeleton, bool useBindPose, Dictionary< BoneId, HumanBodyBones > customBoneIdToHumanBodyBone, OVRHumanBodyBonesMappingsInterface bodyBonesMappingInterface) Parameters useBindPose: bool
If true, use the bind pose.
customBoneIdToHumanBodyBone: Dictionary< BoneId, HumanBodyBones >
Custom bone ID to human body bone mapping.
Returns void |
BuildCoordinateAxesForAllBones
()
|
Builds an orientation per each bone of a character, using each joint's start and end transform.
It handles edge cases related to degenerate joints that may or may not exist, and also handles the character's palms differently relative to standard bones.
Signature
void BuildCoordinateAxesForAllBones() Returns void |
BoneData
()
|
Default, no-argument constructor, that leaves fields such as the original joint, start transform, end transform, and orientation uninitialized.
Signature
BoneData() |
BoneData
(
otherBoneData
)
|
Copy constructor that copies fields such as the original joint, start transform, end transform, orientation from another joint onto this one.
Signature
BoneData(BoneData otherBoneData) Parameters otherBoneData: BoneData
Other instance to copy from.
|
CorrectionQuaternion
: Quaternion? |
The offset quaternion necessary for retargeting by classes such as OVRUnityHumanoidSkeletonRetargeter.
Use this to affect a target character's joint rotation by the source's rotation during retargeting.
Signature
Quaternion? CorrectionQuaternion |
DegenerateJoint
: bool |
Some joints made have bad orientations due to faulty joint pairs.
This can happen if the joint pair start end position have the same value.
Signature
bool DegenerateJoint |
FromPosition
: Vector3 |
From position for joint pair, created during data generation.
You may use this field for visual debugging.
Signature
Vector3 FromPosition |
JointPairEnd
: Transform |
End of joint pair, which is usually the joint following the original one.
Together with JointPairStart, this is used to create the joint's orientation.
Signature
Transform JointPairEnd |
JointPairOrientation
: Quaternion |
The orientation or rotation corresponding to joint pair.
Multiply this by the Vector3.forward vector to derive the forward direction.
Signature
Quaternion JointPairOrientation |
JointPairStart
: Transform |
Start of joint pair, usually the original joint transform, used to create the joint orientation value.
The joint that follows this one is JointPairStart.
Signature
Transform JointPairStart |
OriginalJoint
: Transform |
The original transform associated with joint data.
Use this to track the joint's movements.
Signature
Transform OriginalJoint |
ParentTransform
: Transform |
Parent transform of joint.
Use this for edge cases where the original bone cannot have a joint pair created because it has no children, and its orientation cannot be derived. The parent transform is used to derive the orientation as a backup.
Signature
Transform ParentTransform |
ToPosition
: Vector3 |
To or end position for joint pair, created during data generation.
You may use this field for visual debugging.
Signature
Vector3 ToPosition |
| Member | Value |
|---|---|
FixedUpdateOnly | 0 |
UpdateOnly | |
FixedUpdateAndUpdate |