UxrAvatarRig Class

Stores references to all elements in an avatar rig. These are the Transform components of the bones that drive the visual representation of a humanoid avatar. It also contains functionality to transform the hand using hand poses.

Inheritance Hierarchy

System.Object
  UltimateXR.Avatar.Rig.UxrAvatarRig
Namespace: UltimateXR.Avatar.Rig
Assembly: UltimateXR (in UltimateXR.dll) Version: 0.0.0.0

Syntax

C#

[SerializableAttribute]
public class UxrAvatarRig


The UxrAvatarRig type exposes the following members.

Constructors

NameDescription
Public methodUxrAvatarRig Constructor.

Properties

NameDescription
Public propertyChest Gets the chest transform or null if there isn’t any.
Public propertyHead Gets the head.
Public propertyHips Gets the hips transform or null if there isn’t any.
Public propertyLeftArm Gets the left arm.
Public propertyLeftLeg Gets the left leg.
Public propertyRightArm Gets the right arm.
Public propertyRightLeg Gets the right leg.
Public propertySpine Gets the spine transform or null if there isn’t any.
Public propertyTransforms Gets a sequence of all the non-null transforms in the avatar rig.
Public propertyUpperChest Gets the upper chest transform or null if there isn’t any.

Methods

NameDescription
Public methodClearRigElements Sets all the rig element references to null.
Public methodStatic memberCurlFinger Curls an avatar finger.
Public methodGetArms Gets the avatar arms.
Public methodStatic memberGetHandSide Checks which side a transform is part of, based on which wrist it hangs from or if it hangs from an UxrHandIntegration.
Public methodHasAnyUpperBodyIKReference Gets whether the given rig has any of the references used in upper body IK (head, neck, upper chest, chest or spine).
Public methodHasArmData Gets whether the given rig has all arm references (upper arm, forearm and hand).
Public methodHasFingerData() Gets whether the given rig has all finger data.
Public methodHasFingerData(UxrHandSide) Gets whether the given rig has all finger data.
Public methodHasFullHandData Gets whether the given rig has all hand and finger bone references.
Public methodStatic memberPopHandTransforms Restores all the transform information of the bones of a hand saved using PushHandTransforms(UxrAvatarHand).
Public methodStatic memberPushHandTransforms Saves all the transform information of the bones of a hand so that it can later be restored using PopHandTransforms(UxrAvatarHand, Dictionary(Transform, UxrTransform)).
Public methodStatic memberSetupRigElementsFromAnimator Tries to sets up all rig elements from the Animator of a humanoid model.
Public methodStatic memberTryToGetHandRenderer Tries to get the SkinnedMeshRenderer that represents the given hand.
Public methodStatic memberTryToInferMissingRigElements Tries to infer rig elements by doing some checks on names and bone hierarchy. This is useful when we have a rig that has no full humanoid avatar set up on its animator .
Public methodStatic memberTryToResolveArm Tries to solve which bones from a SkinnedMeshRenderer are remaining parts of the arm that still have no references.
Public methodStatic memberTryToResolveHand Tries to solve missing bone elements of a hand using a SkinnedMeshRenderer as source.
Public methodStatic memberUpdateHandUsingDescriptor(UxrAvatar, UxrHandSide, UxrHandDescriptor) Updates an avatar’s hand transforms using a fixed hand descriptor.
Public methodStatic memberUpdateHandUsingDescriptor(UxrAvatarHand, UxrHandDescriptor, UxrUniversalLocalAxes, UxrUniversalLocalAxes) Updates the hand transforms using a hand descriptor.
Public methodStatic memberUpdateHandUsingDescriptor(UxrAvatar, UxrHandSide, UxrHandDescriptor, UxrHandDescriptor, Single) Updates an avatar’s hand transforms using two hand descriptors and a blend value.
Public methodStatic memberUpdateHandUsingDescriptor(UxrAvatarHand, UxrHandDescriptor, UxrHandDescriptor, Single, UxrUniversalLocalAxes, UxrUniversalLocalAxes) Updates the hand transforms using two hand descriptors and an interpolation value.
Public methodStatic memberUpdateHandUsingRuntimeDescriptor(UxrAvatar, UxrHandSide, UxrRuntimeHandDescriptor) Updates the hand transforms using a runtime hand descriptor.
Public methodStatic memberUpdateHandUsingRuntimeDescriptor(UxrAvatar, UxrHandSide, UxrRuntimeHandDescriptor, UxrRuntimeHandDescriptor, Single) Updates the hand transforms blending between two runtime hand descriptors.

Fields

NameDescription
Public fieldStatic memberHandFingerCount Number of fingers in a hand.

Extension Methods

NameDescription
Public Extension MethodThrowIfNull Throws an exception if the object is null. (Defined by ObjectExt.)

See Also

Reference

UltimateXR.Avatar.Rig Namespace