unreal.AnimNode_HandIKRetargeting

class unreal.AnimNode_HandIKRetargeting(component_pose=[], lod_threshold=- 1, alpha_input_type=AnimAlphaInputType.FLOAT, alpha_bool_enabled=True, alpha=1.0, alpha_scale_bias=[1.0, 0.0], alpha_bool_blend=[0.0, 0.0, AlphaBlendOption.LINEAR, None], alpha_curve_name='None', alpha_scale_bias_clamp=[False, False, False, [0.0, 1.0], [0.0, 1.0], 1.0, 0.0, 0.0, 1.0, 10.0, 10.0], hand_fk_weight=0.5)

Bases: unreal.AnimNode_SkeletalControlBase

Node to handle re-targeting of Hand IK bone chain. It looks at position in Mesh Space of Left and Right IK bones, and moves Left and Right IK bones to those. based on HandFKWeight. (0 = favor left hand, 1 = favor right hand, 0.5 = equal weight). This is used so characters of different proportions can handle the same props.

C++ Source:

  • Module: AnimGraphRuntime

  • File: AnimNode_HandIKRetargeting.h

Editor Properties: (see get_editor_property/set_editor_property)

  • alpha (float): [Read-Write] Alpha: Current strength of the skeletal control

  • alpha_bool_blend (InputAlphaBoolBlend): [Read-Write] Alpha Bool Blend

  • alpha_bool_enabled (bool): [Read-Write] Alpha Bool Enabled

  • alpha_curve_name (Name): [Read-Write] Alpha Curve Name

  • alpha_input_type (AnimAlphaInputType): [Read-Write] Alpha Input Type

  • alpha_scale_bias (InputScaleBias): [Read-Write] Alpha Scale Bias

  • alpha_scale_bias_clamp (InputScaleBiasClamp): [Read-Write] Alpha Scale Bias Clamp

  • component_pose (ComponentSpacePoseLink): [Read-Write] Component Pose: Input link

  • hand_fk_weight (float): [Read-Write] Hand FKWeight: Which hand to favor. 0.5 is equal weight for both, 1 = right hand, 0 = left hand.

  • ik_bones_to_move (Array(BoneReference)): [Read-Write] IKBones to Move: IK Bones to move.

  • left_hand_fk (BoneReference): [Read-Write] Left Hand FK: Bone for Left Hand FK

  • left_hand_ik (BoneReference): [Read-Write] Left Hand IK: Bone for Left Hand IK

  • lod_threshold (int32): [Read-Write] LODThreshold: * Max LOD that this node is allowed to run * For example if you have LODThreadhold to be 2, it will run until LOD 2 (based on 0 index) * when the component LOD becomes 3, it will stop update/evaluate * currently transition would be issue and that has to be re-visited

  • right_hand_fk (BoneReference): [Read-Write] Right Hand FK: Bone for Right Hand FK

  • right_hand_ik (BoneReference): [Read-Write] Right Hand IK: Bone for Right Hand IK

property hand_fk_weight

[Read-Write] Hand FKWeight: Which hand to favor. 0.5 is equal weight for both, 1 = right hand, 0 = left hand.

Type

(float)