Animation Blueprints
An Animation Blueprint is essentially a specialized Blueprint whose graphs control the animation of a SkeletalMesh. It can perform blending of animations, directly control the bones of the skeleton, and output a final pose for a SkeletalMesh each frame.
The Controller directs its Pawn (or Character) to move based on player input or decisions made based on the gameplay environment. Each Pawn has a SkeletalMeshComponent that references the SkeletalMesh to animate and has an instance of a Animation Blueprint. The Animation Blueprint, through its two graphs, can access properties of the owning Pawn, compute values used for blending or state transitions or driving AnimMontages, and calculate the current pose of the SkeletalMesh based on blending of AnimationSequences and direct transformations of the Skeleton from SkeletalControls.
A simple example of an Animation Blueprint is demonstrated on the Animation Content Examples page under section 1.2.
Working with Animation Blueprints
There are two main components in an Animation Blueprint that work in conjunction to create the final animation for each frame. The EventGraph can perform updates to values which can then be used in the AnimGraph to drive State Machines, BlendSpaces, or other nodes allowing blending between multiple AnimationSequences or poses that can fire off notifications to other systems to enable dynamic animation-driven effects to occur.
Every Animation Blueprint has a single EventGraph, which is a standard graph that uses a collection of special animation-related events to initiate sequences of nodes. The most common use of the EventGraph is to update values used by BlendSpaces and other blend nodes to drive animations within the AnimGraph.
The AnimGraph is used to evaluate a final pose for the SkeletalMesh for the current frame. By default, each Animation Blueprint has an AnimGraph which can have animation nodes placed within it to sample AnimationSequences, perform animation blends, or control bone transforms using SkeletalControls. The resulting pose is then applied to the SkeletalMesh each frame.