In the AnimGraph of a character's Animation Blueprint you can use blend nodes to blend multiple source animation poses together to create new animation poses.

With each blend node you can input multiple animation poses using the node's pose input pins, to generate a blended pose that will be accessible from the node's output pose pin.

Some Blend Nodes can accept and blend more than two animation poses, with these nodes you can right-click the node in the AnimGraph and select Add Blend Pin to add another pose input pin.

You can also remove additional pose input pins by right-clicking the specific input pin you want to remove and selecting Remove Blend Pin from the context menu.
While using blend nodes, you can control the degree of blending with an Alpha value. You can manually assign a blend node's alpha value, by selecting the variable input node, or the alpha property in the node's details panel, and entering a value. You can also assign a blend node's alpha by connecting an alpha variable node to the alpha input pin in the AnimGraph. An alpha value of zero will typically favor the primary pose, while a value of 1 will favor the secondary pose.

Using more advanced blend nodes that can incorporate additional animation data, you can create unique animation blending results in your project. Here you will find a reference to the available blend nodes you can use to blend animation poses in Unreal Engine.
Blend Nodes
Categorized with a gray title color, standard blend nodes perform simple blends of animation poses based on node specific parameters. Here you can reference a list of the standard blend nodes that you can use in your project to blend animation poses in the AnimGraph
Apply Additive
Both the Apply Additive and the Apply Mesh Space Additive nodes add an additive pose to a base-normal animation pose, based on an alpha value.
Using the nodes input pins, you can connect a base pose and an additive pose with which to apply.
Apply Additive nodes are also affected by the LOD Threshold system. You can adjust the LOD level threshold that the blend occurs in the Apply Additive and Apply Mesh Space Additive's Details panel.
In addition, you can use a Make Dynamic Additive node, to negatively blend additive animation poses. With this node, you can subtract the additive pose from the base pose to create an output pose.

In the Make Dynamic Additive node's details panel you can also enable the node to operate in the Mesh Space.
Blend
The standard Blend node is a simple combination of the two input poses that scales the weight of which input is prioritized based on an alpha value from the Alpha input pin.

You can connect animation poses to the A and B input pins, and control the degree of blending between the poses with the Alpha pin.
Blend Bone by Channel
With a Blend Bone by Channel blend node you can specify individual bones, in which to apply specific blending transforms.

In the Blend Bone by Channel's Details panel you can add a Bone Definitions section with (+) Add. After creating a definition, you can define a source bone to pull transform data from, and a Target bone to apply the blend. You can also define what aspects of the transform you want to incorporate in the blend, such as Translation, Rotation and Scale by toggling the available properties. In addition you can define in what Transform Space the transform data is being calculated, such as World Space, Component Space, Parent Bone Space and Bone Space.
The present alpha value will facilitate the weight of the blend.
Blend Multi
With a Blend Multi node, you can blend more than two blend poses, between a range of alpha values.

In the Blend Multi's Details panel you can also toggle the node to behave as additive with the Additive Node property.
Function Blend Nodes
Categorized with a green title color, function blend nodes perform more advanced calculation-based blends of animation poses based on node specific parameters. Here you can reference a list of the function based blend nodes that you can use in your project to blend animation poses in the AnimGraph.
Blend Poses by bool
The Blend Poses by bool node performs a time-based blend between two poses using a Boolean value as the trigger. When the Boolean reads true, the pose connected to the True Pose input pin is used; when the Boolean is false, the False Pose is used. Each pose has a float value Blend Time that is used to control how long it will take to blend into the pose.

In the Details panel, you can toggle the Blend Time pins to be visible in the AnimGraph as well as set the Transition Type.
Blend Poses by int
The Blend Poses by int node performs a time-based blend between any number of poses using an integer value as the key. For each input integer value, the pose associated with that value's input pin is used. For instance, when the integer is set to 0, the pose connected to Blend Pose 0 is used. Each pose has a float value Blend Time that is used to control how long it will take to blend into the pose.

In the Details panel, you can toggle the Blend Time pins to be visible in the AnimGraph as well as set the Transition Type.
Blend Poses by Enumeration (Enum)
The Blend Poses by Enum node performs a time-based blend between poses using an Enumeration (Enum) value as the key. A default pose can be used, and additional poses can be added for the values identified within the enum connected through the Active Enum Value pin. Additionally, each pose has a float value Blend Time that is used to control how long it will take to blend into the pose.

In the Details panel, you can toggle the Blend Time pins to be visible in the AnimGraph as well as set the Transition Type.
Layered blend per bone
With the Layered blend per bone node you can blend between any number of dynamic blend poses based on a defined set of bones.

In the Details panel of the Layered blend per bone node, you can define the blend mode as either a Branch Filter or a Blend Mask.

You can enable the Mesh Space Rotation Blend and Mesh Space Scale Blend properties to control whether the Rotation and Scale blending occurs in the Mesh Space or Local Space.
With the Curve Blend Options property you can set the curve blend behaviors from a set list to control how the animation layers blend together. Here you can reference a list of the available Curve Blend Options.

Blend Option | Description |
---|---|
Override | Overrides the pose to the last pose that contains a valid curve value. |
Do Not Override | Does not override the pose. Best used when the desired previous pose doesn't have a curve value. |
Normalize by Weight | Normalizes the pose blend by the sum of all blend weights. |
Blend by Weight | Blends the poses by blend weight without normalizing. |
Use Base Pose | Uses the Base Pose for all curve values. |
Use Min Value | Selects the highest curve value from all connected poses and uses it to blend. |
Use Max Value | Selects the lowest curve value from all connected poses and uses it to blend. |
You can also enable the Blend Root Motion Based on Root Bone property to incorporate the per-bond blend weight of the root bone when lending Root Motion.
Branch Filter
With the Branch Filter option, you can define an Index of bones the blend will affect.

After adding an element to the Branch Filters property, you can input a bone as the Bone Name to use as a reference point to control localized animation blending. Using the Blend Depth property, you can control the wight the blend has on the children bones of the Bone Name.
Value | Example | Description |
---|---|---|
Positive | ![]() |
Positive Blend Depth values will offset the weight by the same number of bones and taper the weight through the chain to the Bone Name. For example, a Blend Depth of 2 will apply a blend weight of 1 to the next child bone and a blend weight of .5 to the Bone Name. |
Zero | ![]() |
A Blend Depth of 0 will apply a blend weight of 1 to the Bone Name and all connected child bones. |
Negative | ![]() |
Negative Blend Depth values will disable any Blend Poses and favor the Base Pose. Lesser values than -1 will offset the weight by the same number of bones and taper the disabled blend weight through the chain to the Bone Name. For example, a Blend Depth of -2 will apply a blend weight of -1 to the next child bone and a blend weight of -.5 to the Bone Name. |
Blend Mask
With the Blend Mask option, you can define the character's Blend Masks as reference points to control the blending between the Base Pose and the Blend Poses.

Inertialization
Inertial blending is a high-performance alternative to traditional animation crossfading that produces natural transitions as a post-process. Once an inertial blend is activated, the source pose is no longer evaluated at all. By contrast, traditional blending evaluates both source and target poses for the duration of the transition to combine them into a blended pose.

To use inertial blending, you can add an Inertialization node to the AnimGraph after the source animation blend you want inertially blended.

The Inertialization node keeps track of pose motion and curve changes so that it can continue moving toward the target animation when an inertial blend is activated. The node is activated by any inertial blend requests connected to its input pose pin. State Machine Transitions, Blend Nodes, Linked Anim Graphs and Linked Anim Layers, can all trigger inertial blends.
The Inertialization node must be connected after the source of the inertial blend request, but does not have to be immediately adjacent. Deferring an Inertialization node closer to the Output Pose node can help reduce or eliminate standard blends from your graph and improve performance. If your AnimGraph contains a Inertialization request but is missing an Inertialization node, a runtime error will be logged in the Message Log panel.

A single Inertialization node can handle many inertial blend requests. The minimum requested blend duration will be used.
When authoring animations and graphs with inertial blending in mind, it's best to begin transitions while the outgoing animation is still in motion. There is no need to return to a neutral pose, as inertial blending will handle smoothly and naturally easing to a rest position. Short blends work best since inertial blending is a post-process for easing motion toward a target animation. Inertial blends can be interrupted with other inertial blends, but try to avoid scenarios that cause continuous interruptions because subsequent blend durations may be trimmed to keep the pose stable.
You can place multiple Inertialization nodes in your graph as needed, and each will handle inertial blend requests from their source pose. This means you can perform inertial blending in different spaces. For example, you may want separate Inertialization nodes for your character's upper and lower body, followed by a Layered Blend per bone node to splice them together into a final pose. You can use inertial blending with additive poses by inserting an Inertialization node before applying to the base pose. For final pose fixups, you will generally run Inertialization before IK, which effectively does inertial blending in IK space.
A Source pose stops being evaluated once inertial blending begins. As a result, Animation Notifies from the source animation Sequence will no longer trigger after inertial blending begins. You may need to refactor existing game logic and Anim Notifies to be compatible with Inertialization.
Request from Blend Nodes
In the Details panel of Inertialization compatible nodes, you can set a Transition Type property to Inertialization. To use inertial blending, the Inertialization node must be placed in the animation graph anywhere after the blending node.

Request from State Machine Transitions
A Inertial Blend request can be made by a State Machine. In the Details panel of a Transition Rule, you can set the Blend Logic property to Inertialization.

Request from Linked and Layered AnimGraphs
Inertialization properties can also be defined in an Animation Layers or from a Linked Anim Graph. After selecting a Graph from the My Blueprints panel you can find the Graph Blending section of properties in the Details panel. An Animation Layer can blend in or out, but only via inertial blending. An Inertialization node must be placed anywhere after the Linked Anim Layer node that links this Animation Blueprint. A negative value means the blend time will be determined by the other incoming or outgoing Animation Layer.
