AnimationTreePlayer¶
Animation player that uses a node graph for blending animations.
Description¶
A node graph tool for blending multiple animations bound to an AnimationPlayer. Especially useful for animating characters or other skeleton-based rigs. It can combine several animations to form a desired pose.
It takes Animations from an AnimationPlayer node and mixes them depending on the graph.
Tutorials¶
Properties¶
bool | active | false |
NodePath | base_path | NodePath("..") |
NodePath | master_player | NodePath("") |
AnimationProcessMode | playback_process_mode | 1 |
Methods¶
Enumerations¶
- NODE_OUTPUT = 0 — Output node.
- NODE_ANIMATION = 1 — Animation node.
- NODE_ONESHOT = 2 — OneShot node.
- NODE_MIX = 3 — Mix node.
- NODE_BLEND2 = 4 — Blend2 node.
- NODE_BLEND3 = 5 — Blend3 node.
- NODE_BLEND4 = 6 — Blend4 node.
- NODE_TIMESCALE = 7 — TimeScale node.
- NODE_TIMESEEK = 8 — TimeSeek node.
- NODE_TRANSITION = 9 — Transition node.
Property Descriptions¶
- bool active
Default | false |
Setter | set_active(value) |
Getter | is_active() |
If true
, the AnimationTreePlayer
is able to play animations.
- NodePath base_path
Default | NodePath("..") |
Setter | set_base_path(value) |
Getter | get_base_path() |
The node from which to relatively access other nodes.
It accesses the bones, so it should point to the same node the AnimationPlayer would point its Root Node at.
- NodePath master_player
Default | NodePath("") |
Setter | set_master_player(value) |
Getter | get_master_player() |
The path to the AnimationPlayer from which this AnimationTreePlayer
binds animations to animation nodes.
Once set, Animation nodes can be added to the AnimationTreePlayer
.
- AnimationProcessMode playback_process_mode
Default | 1 |
Setter | set_animation_process_mode(value) |
Getter | get_animation_process_mode() |
The thread in which to update animations.
Method Descriptions¶
Adds a type
node to the graph with name id
.
- void advance ( float delta )
Shifts position in the animation timeline. delta
is the time in seconds to shift. Events between the current frame and delta
are handled.
Returns the AnimationPlayer’s Animation bound to the AnimationTreePlayer
’s animation node with name id
.
Returns the name of the master_player’s Animation bound to this animation node.
Returns the absolute playback timestamp of the animation node with name id
.
Binds a new Animation from the master_player to the AnimationTreePlayer
’s animation node with name id
.
If enable
is true
, the animation node with ID id
turns off the track modifying the property at path
. The modified node’s children continue to animate.
Binds the Animation named source
from master_player to the animation node id
. Recalculates caches.
Returns whether node id
and dst_id
are connected at the specified slot.
Returns the blend amount of a Blend2 node given its name.
Sets the blend amount of a Blend2 node given its name and value.
A Blend2 node blends two animations (A and B) with the amount between 0 and 1.
At 0, output is input A. Towards 1, the influence of A gets lessened, the influence of B gets raised. At 1, output is input B.
If enable
is true
, the Blend2 node with name id
turns off the track modifying the property at path
. The modified node’s children continue to animate.
Returns the blend amount of a Blend3 node given its name.
Sets the blend amount of a Blend3 node given its name and value.
A Blend3 Node blends three animations (A, B-, B+) with the amount between -1 and 1.
At -1, output is input B-. From -1 to 0, the influence of B- gets lessened, the influence of A gets raised and the influence of B+ is 0. At 0, output is input A. From 0 to 1, the influence of A gets lessened, the influence of B+ gets raised and the influence of B+ is 0. At 1, output is input B+.
Returns the blend amount of a Blend4 node given its name.
Sets the blend amount of a Blend4 node given its name and value.
A Blend4 Node blends two pairs of animations.
The two pairs are blended like Blend2 and then added together.
Connects node id
to dst_id
at the specified input slot.
Disconnects nodes connected to id
at the specified input slot.
- PoolStringArray get_node_list ( )
Returns a PoolStringArray containing the name of all nodes.
Returns the mix amount of a Mix node given its name.
Sets the mix amount of a Mix node given its name and value.
A Mix node adds input b to input a by the amount given by ratio.
Check if a node exists (by name).
Returns the input count for a given node. Different types of nodes have different amount of inputs.
Returns the input source for a given node input.
Returns position of a node in the graph given its name.
Gets the node type, will return from NodeType enum.
Renames a node in the graph.
Sets the position of a node in the graph given its name and position.
Returns the autostart delay of a OneShot node given its name.
Returns the autostart random delay of a OneShot node given its name.
Returns the fade in time of a OneShot node given its name.
Returns the fade out time of a OneShot node given its name.
Returns whether a OneShot node will auto restart given its name.
Returns whether a OneShot node is active given its name.
Sets the autorestart property of a OneShot node given its name and value.
Sets the autorestart delay of a OneShot node given its name and value in seconds.
Sets the autorestart random delay of a OneShot node given its name and value in seconds.
Sets the fade in time of a OneShot node given its name and value in seconds.
Sets the fade out time of a OneShot node given its name and value in seconds.
If enable
is true
, the OneShot node with ID id
turns off the track modifying the property at path
. The modified node’s children continue to animate.
- void oneshot_node_start ( String id )
Starts a OneShot node given its name.
- void oneshot_node_stop ( String id )
Stops the OneShot node with name id
.
Manually recalculates the cache of track information generated from animation nodes. Needed when external sources modify the animation nodes’ state.
- void remove_node ( String id )
Removes the animation node with name id
.
Resets this AnimationTreePlayer
.
Returns the time scale value of the TimeScale node with name id
.
Sets the time scale of the TimeScale node with name id
to scale
.
The TimeScale node is used to speed Animations up if the scale is above 1 or slow them down if it is below 1.
If applied after a blend or mix, affects all input animations to that blend or mix.
Sets the time seek value of the TimeSeek node with name id
to seconds
.
This functions as a seek in the Animation or the blend or mix of Animations input in it.
Deletes the input at input_idx
for the transition node with name id
.
Returns the index of the currently evaluated input for the transition node with name id
.
Returns the number of inputs for the transition node with name id
. You can add inputs by right-clicking on the transition node.
Returns the cross fade time for the transition node with name id
.
Returns true
if the input at input_idx
on the transition node with name id
is set to automatically advance to the next input upon completion.
The transition node with name id
sets its current input at input_idx
.
The transition node with name id
advances to its next input automatically when the input at input_idx
completes.
Resizes the number of inputs available for the transition node with name id
.
The transition node with name id
sets its cross fade time to time_sec
.