Skeletal Controls (also called SkelControls) enables direct control of bones within a Skeleton asset. These can be used within Animation Blueprints to control an individual bone, create IK chains, and more. This direct control of the underlying Skeleton provides the ability to create procedural, dynamically-driven animation. The Transform of one bone can be used to drive another, or can be used to conform the feet of a character to the ground while playing a walk animation. Any sort of modification can be used to tweak or completely override the bone transforms applied by Animation Sequences.
Common Pins and Properties
While the properties available will largely be based on the node itself, some pins and properties are common to all SkeletalControls which are outlined below.
Pin | Description | |
---|---|---|
Input Pins | ||
Component Pose | The input pose to be transformed | |
Alpha | A float value in the range [0.0, 1.0] to use as the alpha value to determine the weighting of the Transform applied by the SkeletalControl. A value of 0.0 gives full weighting to the input pose, while a value of 1.0 gives full weighting to the control's computed Transform. | |
Output Pins | ||
Pose (Blank) | The final pose after the Transform has been applied |
Property | Description |
---|---|
LOD Threshold | This is the max Level of Detail (LOD) that this node is permitted to run on. For example: if you have LOD Threshold set to 2, it will run until LOD 2, but disable itself once the component's LOD becomes 3. |
Component Space
Poses can either be in local-space or component-space. The Convert Spaces nodes available in the AnimGraph of Animation Blueprints provides the ability to convert poses between local and component space. Local space assumes the transform of a bone to be relative to its parent bone. Component space assumes the bone's transform to be relative to the SkeletalMeshComponent.
Generally, when working with poses in an Animation Blueprint, they will be in local-space. However, certain blend nodes and all SkeletalControls operate in component-space. This means that the input pose needs to be transformed prior to being passed in to one of these types of nodes. If the input pose is coming from a node that outputs a local space pose, the pose must be converted to the correct space before a SkeletalControl can perform operations on it. After performing the operations, the resulting pose must be converted back to local space to provide input to additional blends or the Result pin.
Because there is a cost associated with each conversion to or from component space, it is best to group any nodes that operate in component-space, such as SkeletalControls, so that they are all performed in a row and limits the number of conversions needed.
Skeletal Control Nodes
Below are links to additional pages with information about each of the Skeletal Control Nodes within the AnimGraph.
Comments
Post a Comment