AnimationTree

Inherits: Node < Object

A node to be used for advanced animation transitions in an AnimationPlayer.

Description

Note: When linked with an AnimationPlayer, several properties and methods of the corresponding AnimationPlayer will not function as expected. Playback and transitions should be handled using only the AnimationTree and its constituent AnimationNode(s). The AnimationPlayer node should be used solely for adding, deleting, and editing animations.

Tutorials

Properties

bool

active

false

NodePath

anim_player

NodePath(“”)

AnimationProcessMode

process_mode

1

NodePath

root_motion_track

NodePath(“”)

AnimationNode

tree_root

Methods

void

advance ( float delta )

Transform

get_root_motion_transform ( ) const

void

rename_parameter ( String old_name, String new_name )

Enumerations

enum AnimationProcessMode:

  • ANIMATION_PROCESS_PHYSICS = 0 —- The animations will progress during the physics frame (i.e. Node._physics_process).

  • ANIMATION_PROCESS_IDLE = 1 —- The animations will progress during the idle frame (i.e. Node._process).

  • ANIMATION_PROCESS_MANUAL = 2 —- The animations will only progress manually (see advance).

Property Descriptions

Default

false

Setter

set_active(value)

Getter

is_active()

If true, the AnimationTree will be processing.


Default

NodePath(“”)

Setter

set_animation_player(value)

Getter

get_animation_player()

The path to the AnimationPlayer used for animating.


Default

1

Setter

set_process_mode(value)

Getter

get_process_mode()

The process mode of this AnimationTree. See AnimationProcessMode for available modes.


Default

NodePath(“”)

Setter

set_root_motion_track(value)

Getter

get_root_motion_track()

The path to the Animation track used for root motion. Paths must be valid scene-tree paths to a node, and must be specified starting from the parent node of the node that will reproduce the animation. To specify a track that controls properties or bones, append its name after the path, separated by ":". For example, "character/skeleton:ankle" or "character/mesh:transform/local".

If the track has type Animation.TYPE_TRANSFORM, the transformation will be cancelled visually, and the animation will appear to stay in place.


Setter

set_tree_root(value)

Getter

get_tree_root()

The root animation node of this AnimationTree. See AnimationNode.

Method Descriptions

  • void advance ( float delta )

Manually advance the animations by the specified time (in seconds).


  • Transform get_root_motion_transform ( ) const

Retrieve the motion of the root_motion_track as a Transform that can be used elsewhere. If root_motion_track is not a path to a track of type Animation.TYPE_TRANSFORM, returns an identity transformation.