Skip to main content

Animation Graph Editor Tabs

Publish Button

note

To save your animation graph, press the Publish button.

If publishing succeeded, you’ll get a green notification on the bottom right.

If publishing failed, you’ll get a red notification. The publishing error will be shown in the Animation Graph Description tab.

Examples of publishing errors:

  • Var node <input name> (<input id>) is referencing an unknown attribute of the input descriptor.

This signifies that you have an input (in the example above the input named speed) which you use in your State Editor but that you deleted from your Animation Controller Input Editor. To fix the error, simply delete all those input nodes in your State Editor and republish.

  • State machine ID <state machine id> (<state machine name>) does not have an entrypoint

This signifies that your state machine (in the example above the state machine named Main State Machine) does not have an entrypoint state. To fix the error, specify a state as entrypoint in your state machine and republish.

  • If you have any other publishing errors, do not hesitate to reach out to us in our community page.

Details

Select a node, state, or transition and you can see and edit the details of it. For a simple Animation Sample Node, the details include the playback speed. the start offset (expected to be between 0.0 and 1.0), the animation in question, etc.

State Editor

The state editor is where you edit a state of your animation graph. Each animation graph is composed of a state called “Root” which is the starting point of your animation graph.

note

A state is composed of nodes. The purpose of a state is to create a pose.

Root state. A state machine node called “Main State Machine” outputs the final pose to Output Pose.
Idle State (which is in the Main State Machine). “Idle Node” is an Animation Sample node which samples some animation and output it to the Output pose node.
note

Each state is composed of an output pose node. What is connected to the output pose node is the resulting pose of that state.

note

You can see which state your editing by looking at the path of your state on the top left. In the example above we are editing the state named “Idle State”. To go back to a previous state in the path, like the state called “Root”, click on it in the path.

note

When you select a state machine node, the state machine will open in the State Machine Editor above the State Editor. You can then modify the states of that state machine.

State Editor Actions:

  • Move Around

    To move around, hold RMB or Mouse Scroll within your state editor and move your mouse.

    To zoom in and out, scroll your mouse.

  • Create Node

    Right click on where you to create your node. The nodes that you can create will appear in a drop down menu. For Animation Sample, Blend Space nodes, and State Machine, you will also need to specify the name of your node.

  • Edit Node Details

    Click on the node. You will see the node details that you can edit in the Details tab.

  • Connect Nodes

    Drag the output of a node to the input of the next node. The input type and output type need to match.

Click the output.
Drag and drop it on the input (you must be precise to drop it on the input pin, i.e. the little coloured circle).
  • Delete Transition Between Nodes

    Select the connection and press Delete.

  • Delete Node

    Click on the node you want to delete and then press ‘Delete’.

    You cannot delete an Output Pose node.

State Machine Editor

The state machine editor is where you edit a state machine node of your animation graph.

note

A state machine is composed of states. Each state machine has an entrypoint state which is the state outlined in red. The starting point of a state machine is the entrypoint state.

Idle State is the entry state and has a transition to the Locomotion State. Locomotion State also has a transition to Idle State.
note

To go back to previous state machines, use the path on the top left.

note

When you select a state, the state will open in the State Editor below. You can then modify the nodes of that state.

State Machine Editor Actions:

  • Move Around
    • To move around, hold RMB or Mouse Scroll within your state editor and move your mouse.
    • To zoom in and out, scroll your mouse.
  • Create State
    • Right click, select “New state” and specify the state name.
  • Make State Entrypoint
    • Click on the state and toggle “Is entrypoint” in the Details tab. You can also rename the state here.
  • Delete State
    • Click on the state then press Delete.
  • Create Transition Between States
    • Click on the arrows button of a state and then click on the state you want it to transition to.
  • Edit Transition
    • Click on the transition and then edit it in the Details tab.
  • You can modify the duration of the transition (i.e. how long does it to take to transition from the previous state to the next).
  • You can also modify the transition type. There are three different transition types:

- State Played X Times - The transition will trigger after the previous state played X amount of times. X is a float that you can modify.

  • Simple Condition
    • The transition will trigger when the animation controller input is true or false (depending how you set it). The animation controller inputs you specified as bools will appear in the Transition Condition drop down list. For more info on how to create these inputs, see the Animation Controller Input Editor.
  • Scripted Condition
    • The transition will trigger if the code you insert in the editor evalutes to true upon runtime. The code is expected to be in C++ and has access to a variable called data which holds the animation controller input values. To access the value of an input named my_bool_input, you must do the following: bool value = bool(data.get<int32_t>(”my_bool_input”, 0));
If the two animation controller inputs “isWalking” and “isAlive” are true, then this transition will trigger.
  • Delete Transition Between States
    • Click on the transition then press Delete.

Animation Controller Input Editor

note

The Animation Controller Input Editor is where you can edit animation controller inputs, which can be used within your animation graph. They will show up in the animation controller component that references your animation graph, which is where you will modify their values.

note

An input of type bool can be used as a transition condition between states, and an input of type float can be used as input to Blend Space 1D and 2D nodes.

speed (float), move (bool), idle (bool) are specified in the animation controller input editor and so show up in the animation controller.

You can change these input values within the scene editor or in the code of your application, by editing the animation controller component data directly.

Animation Controller Input Editor Actions:

  • Create Input

To create an input specify the input name, the input type and then press the + button on the right.

You can optionally add a category, that’s to organize your inputs in folders called categories.

  • Give Input Default Value

    Once you created the input, you can specify its default value in the widget to the left of the trash can. This is the default value that will show up in your animation controller.

    Examples:

myNewInput has default value of false.
myNewInput has default value of true.
myNewInput has default value of 0.75.
  • Delete Input
Press trashcan next to input.
  • Use bool Input in Animation Graph

    A bool variable can influence a transition condition between states. When you select your transition condition, you will see the input bools you specified in the input editor, and can select one as the condition.

  • Use float Input in Animation Graph

    A float variable can be used as input of a Blend Space 1D or Blend Space 2D node. For more information on those nodes, check

    To use a float input in your State Editor (to connect it to Blend Space nodes), click on the “Grip” button and drag your input to the State Editor.

Then, in your state editor you can connect your input to the input of the Blend Space 1D or 2Dnode.

The float input “speed” is connected to a Blend Space 1D node called “Locomotion Node”.

Animation Set Editor

note

The Animation Set Editor is where you edit your animation set(s) that are compatible with your animation graph.

In your animation controller, you will have to specify your animation graph and the desired animation set you want to use it with.

Animation sets contain the animations that you want to use in your Animation Sample, Blend Space 1D and Blend Space 2D nodes of the animation graph. When you add one of those nodes (or in the case of blend spaces, when you add a control point) an animation set entry will appear.

They also contain the bone masks which you want to use in your Blend Poses node in the animation graph.

Each animation set entry is either an:

  • animation- the path of the node using your animation in your animation graph - the animation reference
The node named “Idle Node” in the path Main State Machine/Idle State will use the animation “Xbot_Idle”.
  • or a bone mask
    • the path of the node using your bone mask in your animation graph
The bone mask named “Upper Body Mask” in the path Main State Machine/Idle State will be based of the skeleton “Xbot_Skeleton” which is the skeleton used by the animations of the Animation Set.
note

You cannot create entries in your animation set. This is done automatically for you when you create an Animation Sample node, when you add a control point to a Blend Space 1D or Blend Space 2D node, or when you create a Bone Mask node. All you have to do in the animation set editor is to specify the animations you want to use for those nodes. You can also select the bone mask, which will open it in the Bone Mask Editor where you will be able to edit it.

Animation Set Editor Actions:

  • Create Animation Set

    Press the + button and then specify your animation set name in the pop up and press OK.

Now you should have both:

Note: when you open an empty animation graph for the first time, you will be asked to create an animation set automatically. You will always have at least one animation set associated to your animation graph.

  • Rename Animation Set

    Unfortunately you cannot do this in the animation graph editor today. Rename your animation set in your asset browser, like you would with other assets.

  • Delete Animation Set

    Select the animation set you want to delete (it will appear in red). Then press the trash button.

Note: If you only have one animation set, you will not be able to delete it. An animation graph has at least one associated animation set to it.

  • Set Animation

    Open your asset browser in another tab or window and drag the animation asset to the animation set entry to set it. In the example below, the animation “Xbot_Running” was dragged to the entry “Main State Machine/Locomotion State/Locomotion Node/Run Control Point”.

  • Open Animation in Asset Browser
Click the button highlighted in red to open the Xbot_Idle animation in your asset browser.

Blend Space Editor

The Blend Space Editor is the tab next to the Animation Controller Input Editor.

note

The Blend Space Editor is where you will edit the control points of your Blend Space 1D and your Blend Space 2D nodes.

When you click on a Blend Space node the Blend Space Editor should open automatically.

Blend Space Editor Actions:

  • Move Around

    To move around, hold RMB or Mouse Scroll within your Blend Space Editor and move your mouse.

    To zoom in and out, scroll your mouse.

  • Create Control Point

    Right click to create control point, specify its name, then press enter.

  • Edit Control Point Animation

    There is an animation set entry in the Animation Set Editor for each control point you create. You can modify the animation there.

  • View Control Point Coordinates

    Hover over the control point to see its coordinates.

  • Edit Control Point Coordinates

    You can hold and drag the control point on the X axis (Blend Space 1D) or X/Y axis (Blend Space 2D) of your Blend Space Editor to edit its coordinates.

  • Delete Control Point

    Select the control point by clicking on it and press Delete.

Bone Mask Editor

The bone mask editor allows you to edit a bone mask, which is a list of weights per bone. This can be used to only apply a pose on a select part of the skeleton. The weights you assign are expected to be between 0 and 1. To open the bone mask editor, either select a bone mask node in the State Editor or click on the bone mask you want to edit in the Animation Set Editor. The skeleton used is the one specified under Bone Masks in the Animation Set Editor.

Animation Graph Description

The Animation Graph Description is the tab next to Details. It simply shows your animation graph description and is mainly a debug tool. If you have any publishing errors, they will show up here.