unreal.TargetChainFKSettings

class unreal.TargetChainFKSettings(enable_fk: bool = False, rotation_mode: RetargetRotationMode = Ellipsis, rotation_alpha: float = 0.0, translation_mode: RetargetTranslationMode = Ellipsis, translation_alpha: float = 0.0, pole_vector_matching: float = 0.0, pole_vector_maintain_offset: bool = False, pole_vector_offset: float = 0.0)

Bases: StructBase

Target Chain FKSettings

C++ Source:

  • Plugin: IKRig

  • Module: IKRig

  • File: IKRetargetSettings.h

Editor Properties: (see get_editor_property/set_editor_property)

  • enable_fk (bool): [Read-Write] Whether to copy the shape of the chain from the source skeleton using the Rotation and Translation modes. Default is true. NOTE: All FK operations run before the IK pass to copy the shape of the FK chain from the source skeleton.

  • pole_vector_maintain_offset (bool): [Read-Write] Default is False. When true, the original offset between the source/target pole vectors will be maintained when using Pole Vector Matching.

  • pole_vector_matching (float): [Read-Write] Range 0 to 1. Default 1. Matches the twist angle of this chain (along the Pole direction) to the source chain. At 0, the chain’s pole vector direction will be left alon At 1, the root bone of the chain will be twist-rotated in the pole direction to match the orientation of the source chain.

  • pole_vector_offset (float): [Read-Write] Range +/- 180. Default 0. An angular offset, in degrees, for the pole direction of the chain.

  • rotation_alpha (float): [Read-Write] Range +/- infinity. Default 1. Scales the amount of rotation that is applied. If Rotation Mode is None this parameter has no effect. Otherwise, this parameter blends the rotation of each bone in the chain from the base retarget pose (0) to the retargeted pose (1).

  • rotation_mode (RetargetRotationMode): [Read-Write] Determines how rotation is copied from the source chain to the target chain. Default is Interpolated. Interpolated: Source and target chains are normalized by their length, then each target bone rotation is generated by finding the rotation at the same normalized distance on the source chain and interpolating between the neighboring bones. One to One: Each target bone rotation is copied from the equivalent bone in the source chain, based on the order in the chain, starting at the root of the chain. If the target chain has more bones than the source, the extra bones will remain at their reference pose. One to One Reversed: Same as One-to-One, but starting from the tip of the chain. None: The rotation of each target bone in the chain is left at the reference pose.

  • translation_alpha (float): [Read-Write] Range +/- infinity. Default 1. Scales the amount of translation that is applied. Exact behavior depends on the Translation Mode. In None Mode, this parameter has no effect. In Globally Scaled and Absolute modes, the translation offset is scaled by this parameter.

  • translation_mode (RetargetTranslationMode): [Read-Write] Determines how translation is copied from the source chain to the target chain. Default is None. None: Translation of target bones are left unmodified from the retarget pose. Globally Scaled: Translation of target bone is set to the source bone offset multiplied by the global scale of the skeleton (determined by the relative height difference between retarget root bones). Absolute: Translation of target bone is set to the absolute position of the source bone.

property enable_fk: bool

[Read-Write] Whether to copy the shape of the chain from the source skeleton using the Rotation and Translation modes. Default is true. NOTE: All FK operations run before the IK pass to copy the shape of the FK chain from the source skeleton.

Type:

(bool)

property pole_vector_maintain_offset: bool

[Read-Write] Default is False. When true, the original offset between the source/target pole vectors will be maintained when using Pole Vector Matching.

Type:

(bool)

property pole_vector_matching: float

[Read-Write] Range 0 to 1. Default 1. Matches the twist angle of this chain (along the Pole direction) to the source chain. At 0, the chain’s pole vector direction will be left alon At 1, the root bone of the chain will be twist-rotated in the pole direction to match the orientation of the source chain.

Type:

(float)

property pole_vector_offset: float

[Read-Write] Range +/- 180. Default 0. An angular offset, in degrees, for the pole direction of the chain.

Type:

(float)

property rotation_alpha: float

[Read-Write] Range +/- infinity. Default 1. Scales the amount of rotation that is applied. If Rotation Mode is None this parameter has no effect. Otherwise, this parameter blends the rotation of each bone in the chain from the base retarget pose (0) to the retargeted pose (1).

Type:

(float)

property rotation_mode: RetargetRotationMode

[Read-Write] Determines how rotation is copied from the source chain to the target chain. Default is Interpolated. Interpolated: Source and target chains are normalized by their length, then each target bone rotation is generated by finding the rotation at the same normalized distance on the source chain and interpolating between the neighboring bones. One to One: Each target bone rotation is copied from the equivalent bone in the source chain, based on the order in the chain, starting at the root of the chain. If the target chain has more bones than the source, the extra bones will remain at their reference pose. One to One Reversed: Same as One-to-One, but starting from the tip of the chain. None: The rotation of each target bone in the chain is left at the reference pose.

Type:

(RetargetRotationMode)

property translation_alpha: float

[Read-Write] Range +/- infinity. Default 1. Scales the amount of translation that is applied. Exact behavior depends on the Translation Mode. In None Mode, this parameter has no effect. In Globally Scaled and Absolute modes, the translation offset is scaled by this parameter.

Type:

(float)

property translation_mode: RetargetTranslationMode

[Read-Write] Determines how translation is copied from the source chain to the target chain. Default is None. None: Translation of target bones are left unmodified from the retarget pose. Globally Scaled: Translation of target bone is set to the source bone offset multiplied by the global scale of the skeleton (determined by the relative height difference between retarget root bones). Absolute: Translation of target bone is set to the absolute position of the source bone.

Type:

(RetargetTranslationMode)