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] 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 of the reference for the twist node

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

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

  • lod_threshold (int32): [Read-Write] * 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] 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] Maximum value to apply to the destination (remapped from the input range)

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

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

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