Overview
Animation data (keyframe tracks per bone) is stored inside FBX files. The plugin can read a separate animation FBX file and apply it to any already-imported skeletal mesh, or to an existing Skeletal Mesh Component in your scene.
There are two animation controller types: UProceduralSkeletalMeshComponent (for FBX-imported skeletal meshes) and URuntimeSkeletalMeshAnimationComponent (for driving a native Unreal USkeletalMeshComponent).
Importing an Animation
Call one of these on the FBX Import Manager:
| Node | Use when⦠| Key parameters |
|---|---|---|
| Import FBX Animation To Actor | You want to import an animation onto an FBX-imported character (the most common case) | Animation File Path, FBX Mesh Actor reference, Skeletal Mesh Index (0 = first) |
| Import FBX Animation | You have a direct USkeletalMeshNode reference | Animation File Path, Skeletal Mesh Node reference |
| Import FBX Animation To Skeletal Mesh Component | You want to drive a native Unreal Skeletal Mesh Component (not an FBX-imported one) | Animation File Path, Skeletal Mesh Component reference |
Animation Events on the Import Manager
| Event | When it fires |
|---|---|
| On Animation Imported | After each individual animation track is loaded β receives Import ID, animation name, and track count |
| On Animation Import Complete | After all animations in a file are ready β receives file name and total animation count |
Playback Controls β FBX-Imported Skeletal Mesh
After import, get the UProceduralSkeletalMeshComponent from the node (USkeletalMeshNode.ProcMeshComponent) and call these Blueprint nodes on it:
| Node | Parameters | What it does |
|---|---|---|
| Play Animation | Animation Name (String), Loop (bool) | Start playback by animation name |
| Stop Animation | β | Stop and reset to rest pose |
| Pause Animation | β | Freeze at current frame |
| Resume Animation | β | Continue from paused position |
| Set Animation Play Rate | Float (1.0 = normal speed) | Speed up or slow down |
| Get Animation Duration | Animation Name (String) | Returns total length in seconds |
| Get Current Animation Time | β | Returns current playback position in seconds |
| Is Playing Animation | β | Returns true/false |
| Get Animation Names | β | Returns array of all imported animation name strings |
| Has Animation | Animation Name (String) | Check if a given animation was imported |
| Get Num Animations | β | Returns number of animations imported onto this component |
Playback Controls β Native Skeletal Mesh Component
To drive animation on a native USkeletalMeshComponent (e.g. your own character Blueprint's mesh), use the Runtime Skeletal Mesh Animation Component.
- Call Import FBX Animation To Skeletal Mesh Component on the manager to load the animation.
- Call Get Or Create Native Animation Controller on the manager, passing your Skeletal Mesh Component β this returns a
URuntimeSkeletalMeshAnimationComponent. - Use that component's Play Animation, Stop Animation, Pause Animation, Resume Animation, Set Animation Play Rate, Get Animation Duration, and other nodes (identical API to above).