class unreal.AnimNode_TwistCorrectiveNode(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])

Bases: unreal.AnimNode_SkeletalControlBase

This is the node that apply corrective morphtarget for twist Good example is that if you twist your neck too far right or left, you’re going to see odd stretch shape of neck, This node can detect the angle and apply morphtarget curve This isn’t the twist control node for bone twist

C++ Source:

  • Module: AnimGraphRuntime

  • File: AnimNode_TwistCorrectiveNode.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

  • base_frame (ReferenceBoneFrame): [Read-Write] Base Frame: Base Frame of the reference for the twist node

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

  • curve (AnimCurveParam): [Read-Write] Curve

  • 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

  • range_max (float): [Read-Write] Range Max: Maximum limit of the input value (mapped to RemappedMax, only used when limiting the source range) We can’t go more than 180 right now because this is dot product driver

  • remapped_max (float): [Read-Write] Remapped Max: Maximum value to apply to the destination (remapped from the input range)

  • remapped_min (float): [Read-Write] Remapped Min: Minimum value to apply to the destination (remapped from the input range)

  • twist_frame (ReferenceBoneFrame): [Read-Write] Twist Frame: Transform component to use as input

  • twist_plane_normal_axis (Axis): [Read-Write] Twist Plane Normal Axis: Normal of the Plane that we’d like to calculate angle calculation from in BaseFrame. Please note we’re looking for Normal Axis