unreal.RigUnit_FABRIK

class unreal.RigUnit_FABRIK(execute_context: ControlRigExecuteContext = [], start_bone: Name = 'None', effector_bone: Name = 'None', effector_transform: Transform = Ellipsis, precision: float = 0.0, weight: float = 0.0, propagate_to_children: bool = False, max_iterations: int = 0, set_effector_transform: bool = False)

Bases: RigUnit_HighlevelBaseMutable

The FABRIK solver can solve N-Bone chains using the Forward and Backward Reaching Inverse Kinematics algorithm. For now this node supports single effector chains only.

C++ Source:

  • Plugin: ControlRig

  • Module: ControlRig

  • File: RigUnit_FABRIK.h

Editor Properties: (see get_editor_property/set_editor_property)

  • effector_bone (Name): [Read-Write] The last bone in the chain to solve - the effector

  • effector_transform (Transform): [Read-Write] The transform of the effector in global space

  • execute_context (ControlRigExecuteContext): [Read-Write] * This property is used to chain multiple mutable units together

  • max_iterations (int32): [Read-Write] The maximum number of iterations. Values between 4 and 16 are common.

  • precision (float): [Read-Only] The precision to use for the fabrik solver

  • propagate_to_children (bool): [Read-Only] If set to true all of the global transforms of the children of this bone will be recalculated based on their local transforms. Note: This is computationally more expensive than turning it off.

  • set_effector_transform (bool): [Read-Write] The option to set the effector transform

  • start_bone (Name): [Read-Write] The first bone in the chain to solve

  • weight (float): [Read-Write] The weight of the solver - how much the IK should be applied.

property effector_bone: Name

[Read-Write] The last bone in the chain to solve - the effector

Type:

(Name)

property effector_transform: Transform

[Read-Write] The transform of the effector in global space

Type:

(Transform)

property max_iterations: int

[Read-Write] The maximum number of iterations. Values between 4 and 16 are common.

Type:

(int32)

property precision: float

[Read-Only] The precision to use for the fabrik solver

Type:

(float)

property propagate_to_children: bool

[Read-Only] If set to true all of the global transforms of the children of this bone will be recalculated based on their local transforms. Note: This is computationally more expensive than turning it off.

Type:

(bool)

property set_effector_transform: bool

[Read-Write] The option to set the effector transform

Type:

(bool)

property start_bone: Name

[Read-Write] The first bone in the chain to solve

Type:

(Name)

property weight: float

[Read-Write] The weight of the solver - how much the IK should be applied.

Type:

(float)