Version: 1.8
LanguageEnglish
  • C#

TFABRIK

class in UnityEngine.Animations

/

Inherits from:Behaviour

/

Implemented in:UnityEngine.AnimationModule


Implements interfaces:IKBase, SingleGoalIKBase, THeuristicChainIK

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

IK solver for chained bones using the FABRIK algorithm.

This class provides an IK solver that utilizes the FABRIK (Forward And Backward Reaching Inverse Kinematics) method for manipulating chains of bones, which is commonly used for manipulating chains of bones in character animation. See Also: IKBase,SingleGoalIKBase,THeuristicChainIK.

Properties

boneCountGets the total number of bones currently in the chain.
endBoneGets or sets the end bone of the IK chain.
endRotationWeightGets or sets the weight of rotation applied to the end bone during IK calculations.
goalGets or sets the IK goal that the solver aims to reach.
initializedWIndicates whether the IK solver has been initialized.
iterationsGets or sets the maximum number of iterations allowed for the IK calculations.
rootBoneGets or sets the root bone of the IK chain.
toleranceGets or sets the distance threshold between the root bone and the IK goal. If the distance is below this value, the IK iteration will terminate.
weightGets or sets the overall influence weight (0-1 range) of the FABRIK solver on the bone chain. A weight of 0.0 disables the solver (bone transforms remain unchanged), while 1.0 applies full solver influence. Values between 0.0 and 1.0 blend the solver's result with the original bone transforms for smooth transitions.

Public Methods

AddBoneAdds a bone transform to the end of the bone chain.
ClearBonesClears all bones from the current IK chain.
FixTransformsResets the transforms of all bones before executing IK calculations.
GetBoneRetrieves the bone transform at the specified index in the IK chain.
InitializeInitializes the IK solver.
InsertBoneInserts a bone transform at the specified index in the IK chain. Existing bones at and beyond the target index are shifted right to accommodate the new bone, preserving the chain's structural order.
IsValidChecks if the solver has been properly initialized.
RemoveBoneRemoves the specified bone from the bone chain.
SetBoneReplaces the bone transform at the specified index in the IK chain. The chain's length and other bones remain unchanged, only updating the target position's bone reference.

Inherited Members

Properties

enabledEnabled Behaviours are Updated, disabled Behaviours are not.
isActiveAndEnabledReports whether a GameObject and its associated Behaviour is active and enabled.
gameObjectThe game object this component is attached to. A component is always attached to a game object.
tagThe tag of this game object.
transformThe Transform attached to this GameObject.
hideFlagsShould the object be hidden, saved with the Scene or modifiable by the user?
nameThe name of the object.

Public Methods

BroadcastMessageCalls the method named methodName on every MonoBehaviour in this game object or any of its children.
CompareTagChecks the GameObject's tag against the defined tag.
GetComponentGets a reference to a component of type T on the same GameObject as the component specified.
GetComponentInChildrenGets a reference to a component of type T on the same GameObject as the component specified, or any child of the GameObject.
GetComponentIndexGets the index of the component on its parent GameObject.
GetComponentInParentGets a reference to a component of type T on the same GameObject as the component specified, or any parent of the GameObject.
GetComponentsGets references to all components of type T on the same GameObject as the component specified.
GetComponentsInChildrenGets references to all components of type T on the same GameObject as the component specified, and any child of the GameObject.
GetComponentsInParentGets references to all components of type T on the same GameObject as the component specified, and any parent of the GameObject.
SendMessageCalls the method named methodName on every MonoBehaviour in this game object.
SendMessageUpwardsCalls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour.
TryGetComponentGets the component of the specified type, if it exists.
GetInstanceIDGets the instance ID of the object.
ToStringReturns the name of the object.

Static Methods

DestroyRemoves a GameObject, component or asset.
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoadDo not destroy the target Object when loading a new Scene.
FindAnyObjectByTypeRetrieves any active loaded object of Type type.
FindFirstObjectByTypeRetrieves the first active loaded object of Type type.
FindObjectOfTypeReturns the first active loaded object of Type type.
FindObjectsByTypeRetrieves a list of all loaded objects of Type type.
FindObjectsOfTypeGets a list of all loaded objects of Type type.
InstantiateClones the object original and returns the clone.
InstantiateAsyncCaptures a snapshot of the original object (that must be related to some GameObject) and returns the AsyncInstantiateOperation.

Operators

boolDoes the object exist?
operator !=Compares if two objects refer to a different object.
operator ==Compares two object references to see if they refer to the same object.