UxrArmIKSolver Class
IK component that implements basic Inverse Kinematics for an arm.
Inheritance Hierarchy
System.Object
Object
Component
Behaviour
MonoBehaviour
UltimateXR.Core.Components.UxrComponent
UltimateXR.Core.Components.UxrComponent(UxrIKSolver)
UltimateXR.Core.Components.Composite.UxrAvatarComponent(UxrIKSolver)
UltimateXR.Animation.IK.UxrIKSolver
UltimateXR.Animation.IK.UxrArmIKSolver
Namespace: UltimateXR.Animation.IK
Assembly: UltimateXR (in UltimateXR.dll) Version: 0.0.0.0
Syntax
C#
public class UxrArmIKSolver : UxrIKSolver
The UxrArmIKSolver type exposes the following members.
Constructors
Name | Description | |
---|---|---|
UxrArmIKSolver |
Properties
Name | Description | |
---|---|---|
Arm | Gets the arm bone. | |
Clavicle | Gets the clavicle bone. | |
Forearm | Gets the forearm bone. | |
Hand | Gets the hand bone. | |
OverExtendMode | Gets or sets what happens when the real hand makes the VR arm to over-extend. This may happen if the user has a longer arm than the VR model, if the controller is placed far away or if the avatar is grabbing an object with constraints that lock the hand position. | |
RelaxedElbowAperture | Gets or sets how far [0.0, 1.0] the elbow will from the body when solving the IK. Lower values will bring the elbow closer to the body. | |
Side | Gets whether it is the left or right arm. |
Methods
Name | Description | |
---|---|---|
InternalSolveIK | Solves the IK for the current frame. (Overrides UxrIKSolver.InternalSolveIK().) | |
OnDisable | Unsubscribes from events. (Overrides UxrIKSolver.OnDisable().) | |
OnEnable | Subscribe to events. (Overrides UxrIKSolver.OnEnable().) | |
SolveIKPass | Solves a pass in the Inverse Kinematics. | |
Start | Computes internal IK parameters. (Overrides UxrComponent.Start().) |
Fields
Name | Description | |
---|---|---|
DefaultArmRangeOfMotionAngle | ||
DefaultClavicleDeformation | ||
DefaultClavicleRangeOfMotionAngle | ||
DefaultElbowAperture | ||
DefaultElbowApertureRotation |
Extension Methods
Name | Description | |
---|---|---|
CheckSetEnabled | Enables/disabled the component if it isn’t enabled already. (Defined by MonoBehaviourExt.) | |
GetOrAddComponent<T> | Gets the Component of a given type. If it doesn’t exist, it is added to the GameObject. (Defined by ComponentExt.) | |
GetPathUnderScene | Gets the full path under current scene, including all parents, but scene name, for the given component. (Defined by ComponentExt.) | |
GetSceneUid | Gets an unique identifier string for the given component. (Defined by ComponentExt.) | |
GetUniqueScenePath | Gets an unique path in the scene for the given component. It will include scene name, sibling and component indices to make it unique. (Defined by ComponentExt.) | |
LoopCoroutine | Creates a coroutine that simplifies executing a loop during a certain amount of time. (Defined by MonoBehaviourExt.) | |
SafeGetComponentInParent<T> | Gets the Component of a given type in the GameObject or any of its parents. It also works on prefabs, where regular GetComponentInParent(Type, Boolean) will not work: https://issuetracker.unity3d.com/issues/getcomponentinparent-is-returning-null-when-the-gameobject-is-a-prefab (Defined by ComponentExt.) | |
ShowInInspector(Boolean) | Overloaded. Controls whether to show the current object in the inspector. (Defined by ObjectExt.) | |
ShowInInspector(Boolean, Boolean) | Overloaded. Controls whether to show the current object in the inspector and whether it is editable. (Defined by ObjectExt.) | |
ThrowIfNull | Throws an exception if the object is null. (Defined by ObjectExt.) |