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.) |