As you play Animation Sequences on your Skeletal Mesh, you may find it necessary to animate additional properties and values synchronized to that animation. You can accomplish this using Animation Curves (also called anim curves, or curves), which are float-type values you can add and keyframe within an Animation Sequence. Curves can be useful for augmenting your animations with additional animatable properties, such as animating Material Parameters, Morph Targets, and other attributes.
This document provides an overview of Animation Curves, and the various ways you can use them.
Prerequisites
- Your project contains a Skeletal Mesh and Animation Sequences.
- If you are using anim curves to affect Material Parameters, you need a basic understanding of Material Instancing.
- If you are using anim curves to affect Morph Targets, you need a basic understanding of setting up Morph Targets on your Skeletal Mesh.
Creating Animation Curves
Animation Curves can be created in the following ways:
-
When viewing an Animation Sequence in the Animation Sequence Editor, click the Curves track dropdown menu and select Add Curve… > Create Curve. Type in the name of the new curve and press Enter to create it.
-
In the Anim Curves panel, right-click in the curve list area and select Add Curve. Type in the name of the new curve and press Enter to create it.
-
If your skeleton already has curves, you can select them from the Curves > Add Curve… dropdown menu.
Animation Curves are stored on the Skeleton Asset. Therefore, when you are creating curves, you are also editing the Skeleton, which will require you to save it.
Importing Animation Curves
Custom attributes can also be created externally in animation software like Autodesk Maya, and then imported as curves along with your Animation Sequence.
To do this, first create a custom attribute on any bone in your skeleton and keyframe it. You must ensure that it is a float-type attribute, as that is the only compatible data type with curves. Once finished, export your animation.

Your custom attribute must be keyframed in order for curve data to correctly import.
Next, import your Animation Sequence containing the custom attributes. When importing the FBX, ensure that Import Custom Attribute is enabled.

Once imported, your curves should appear in your Animation Sequence. In this example, two attributes were created on different bones and then imported.

Creating Curve Animation
Once you have created an Animation Curve and added it to your Animation Sequence, you can animate its value. Select the Curve dropdown menu on the Animation Curve track and click Edit Curve. This will open the Curve Editor.

You can also open the Curve Editor by double-clicking the timeline region for the specific curve track.

Once the Curve Editor is open, you can create keyframes by pressing Enter. This creates a keyframe at the Playhead location, which can be moved by dragging it to set keyframes at different times along the sequence. You can click and drag keyframes to change their time and value.

Refer to the Curve Editor page for more information on navigation, keyframes, and tangent editing using the Curve Editor.
Anim Curves Panel
Your created and stored curves can be viewed and managed from the Anim Curves panel. To view this panel, navigate to the main editor menu and enable Window > Anim Curves. The Anim Curve panel can only be viewed from the Skeleton Editor, Animation Sequence Editor, or Animation Blueprints Editor.

Curve Management
Several settings and features can be adjusted on your curve entries within the Anim Curve panel.

Name | Description |
---|---|
Curve Name | The name of the curve. You can rename curves by right-clicking one in the Anim Curve panel and selecting Rename Curve. ![]() |
Type | Enables this curve to either be used for Morph Targets or Materials. |
Weight | The current value of the curve. |
Auto | Enabling this causes the Weight value to change automatically according to its keyframed values if the curve is being animated in this sequence. If disabled, it ignores its animated values. Disabling this can be useful for testing how the curve value affects the character without keyframing it. ![]() |
Bones | The number of bones connected to this curve. |
Curve Filtering
You can filter the list of curves in the Anim Curves panel to display only the actively-used curves, or only certain types of curves.
- Disabling All Curves causes only the currently-used curves for this Animation Sequence to be displayed.
- Disabling Morph Target, Attribute, and Material curves disables those curve types from being displayed.

Curve Details
Selecting a curve reveals the following properties in the Details panel.

Name | Description |
---|---|
Curve Name | The name of the curve. |
Connected Bones | An array of bones that you can connect to this curve. This is useful if you want certain curves to be active depending on if a bone is being used or not. Bones can be active or inactive depending on if different skeletons are merged, or bones are being reduced for different LODs. |
Max LOD | The maximum LOD to use before this curve no longer evaluates. For example, setting this value to 1 will cause this curve to evaluate for LODs 0 and 1, but not for 2 and beyond. |
Using Animation Curves
Once you have created and animated your curve, there are a variety of ways you can use it to affect your character.
Materials
You can use Animation Curves to automatically affect Scalar Material Parameters. This requires you to do the following:
-
Match the curve name to the name of the Material Parameter in the Material.
-
Enable the Material curve type in the Anim Curves panel.
Once this is done, the curve value starts to affect the Material Parameter.

Material Animation Curves affect all Materials (and their parameters) assigned to a Skeletal Mesh. Therefore, you may need to adjust your content appropriately if you want your anim curve to only affect a parameter from a single Material. This can happen if your Skeletal Mesh has multiple assigned Materials deriving from a single parent, which will cause parameter names to share between all assigned Materials.

Morph Targets
Similarly to Materials, you can use Animation Curves to automatically affect Morph Targets on your Skeletal Mesh. This requires you to do the following:
-
Match the curve name to the name of the Morph Target found in the Morph Target Previewer
-
Enable the Morph Target curve type in the Anim Curves panel.
Once this is done, the curve value starts to affect the Morph Target.

Animation Blueprints
You can use Animation Curves to affect arbitrary values in Animation Blueprints. In most cases, you can use them to affect the alpha values of certain Anim Graph nodes, such as IK, in order to change IK states during animation playback.

The following curve-related functions are available in both the Animation Blueprint Anim Graph, and Event Graph:
Name | Image | Description |
---|---|---|
Get Active Curve Names | ![]() |
This targets an Anim Instance and returns the last up-to-date list of active curve names for the specified curve type. |
Get All Curve Names | ![]() |
This targets an Anim Instance and returns all Curve Names into a string array. |
Get Curve Value | ![]() |
This targets an Anim Instance and returns the value of a specified Curve Name. |
Metadata Curves
Metadata Curves are Animation Curves that output a static curve value of 1.0 when added to an Animation Sequence. They can work conversely with normal Animation Curves, which by default (with no keyframes) output a static curve value of 0.0. If no curve is added to a sequence, the anim curve value also falls back to a value of 0.0.
This behavior can be useful in larger projects that contain many Animation Sequences. In these projects, many of those animations may require constant 1.0 curve values throughout them. Therefore, you can use Metadata Curves to expedite this process, rather than manually adding normal curves and keyframing them to 1.0. In other words, large projects that are using anim curves can structure their usage in Animation Sequences in the following way:
- A small number of Animation Sequences may require explicit curve animation on them. Therefore, add Animation Curves to those animations and keyframe them accordingly.
- A larger number of Animation Sequences may require curve values set constantly to 1.0, in order to maintain a property value. Therefore, add Metadata Curves to those animations.
- The remainder of all Animation Sequences may not require curve value considerations, or require curve values set constantly to 0.0. No action is required.
To create a Metadata Curve, click the Curves track dropdown menu and select Add Curve… > Create Curve. You can either select a currently-existing curve, or click Create New to create a new curve.

Alternatively, a currently-existing anim curve can be converted to a Metadata Curve by clicking the Curve drop down menu on a curve track and selecting Convert To Metadata.

Once created, Metadata Curves are read-only and output a constant curve value of 1.0.
