AnimationTreePlayer¶
Category: Core
Brief Description¶
Animation Player that uses a node graph for blending Animations.
Member Functions¶
Member Variables¶
- bool active - If
true
theAnimationTreePlayer
is able to play animations. Default value:false
. - NodePath base_path - The node from which to relatively access other nodes. Default value:
".."
.
It accesses the Bones, so it should point to the same Node the AnimationPlayer would point its Root Node at.
- NodePath 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 - The thread in which to update animations. Default value: enum ANIMATION_PROCESS_IDLE.
Enums¶
enum AnimationProcessMode
- ANIMATION_PROCESS_PHYSICS = 0 — Process animation during the physics process. This is especially useful when animating physics bodies.
- ANIMATION_PROCESS_IDLE = 1 — Process animation during the idle process.
enum NodeType
- 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.
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.
Member Function Description¶
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.
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.
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 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 ID 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 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 mix amount of a Mix node given its name.
Sets mix amount of a Mix node given its name and value.
A Mix node adds input b to input a by a the amount given by ratio.
Check if a node exists (by name).
Return the input count for a given node. Different types of nodes have different amount of inputs.
Return the input source for a given node input.
Returns position of a node in the graph given its name.
Get the node type, will return from NODE_* enum.
Rename a node in the graph.
Sets position of a node in the graph given its name and position.
Returns autostart delay of a OneShot node given its name.
Returns autostart random delay of a OneShot node given its name.
Returns fade in time of a OneShot node given its name.
Returns 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 autorestart property of a OneShot node given its name and value.
Sets autorestart delay of a OneShot node given its name and value in seconds.
Sets autorestart random delay of a OneShot node given its name and value in seconds.
Sets fade in time of a OneShot node given its name and value in seconds.
Sets 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
.
- void recompute_caches ( )
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
.
- void reset ( )
Resets this AnimationTreePlayer
.
Returns 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 rightclicking 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 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
.