AnimationNode¶
Inherits: Resource < RefCounted < Object
Inherited By: AnimationNodeAdd2, AnimationNodeAdd3, AnimationNodeBlend2, AnimationNodeBlend3, AnimationNodeOneShot, AnimationNodeOutput, AnimationNodeTimeScale, AnimationNodeTimeSeek, AnimationNodeTransition, AnimationRootNode
Base resource for AnimationTree nodes.
Description¶
Base resource for AnimationTree nodes. In general, it's not used directly, but you can create custom ones with custom blending formulas.
Inherit this when creating nodes mainly for use in AnimationNodeBlendTree, otherwise AnimationRootNode should be used instead.
Tutorials¶
Properties¶
Methods¶
_get_caption ( ) virtual const |
|
_get_child_by_name ( StringName name ) virtual const |
|
_get_child_nodes ( ) virtual const |
|
_get_parameter_default_value ( StringName parameter ) virtual const |
|
_get_parameter_list ( ) virtual const |
|
_has_filter ( ) virtual const |
|
void |
|
void |
blend_animation ( StringName animation, float time, float delta, bool seeked, float blend, int pingponged=0 ) |
blend_input ( int input_index, float time, bool seek, float blend, FilterAction filter=0, bool optimize=true ) |
|
blend_node ( StringName name, AnimationNode node, float time, bool seek, float blend, FilterAction filter=0, bool optimize=true ) |
|
get_input_count ( ) const |
|
get_input_name ( int input ) |
|
get_parameter ( StringName name ) const |
|
is_path_filtered ( NodePath path ) const |
|
void |
remove_input ( int index ) |
void |
set_filter_path ( NodePath path, bool enable ) |
void |
set_parameter ( StringName name, Variant value ) |
Signals¶
removed_from_graph ( )
Emitted when the node was removed from the graph.
tree_changed ( )
Emitted by nodes that inherit from this class and that have an internal tree when one of their nodes changes. The nodes that emit this signal are AnimationNodeBlendSpace1D, AnimationNodeBlendSpace2D, AnimationNodeStateMachine, and AnimationNodeBlendTree.
Enumerations¶
enum FilterAction:
FILTER_IGNORE = 0 --- Do not use filtering.
FILTER_PASS = 1 --- Paths matching the filter will be allowed to pass.
FILTER_STOP = 2 --- Paths matching the filter will be discarded.
FILTER_BLEND = 3 --- Paths matching the filter will be blended (by the blend value).
Property Descriptions¶
bool filter_enabled
Setter |
set_filter_enabled(value) |
Getter |
is_filter_enabled() |
If true
, filtering is enabled.
Method Descriptions¶
String _get_caption ( ) virtual const
Gets the text caption for this node (used by some editors).
AnimationNode _get_child_by_name ( StringName name ) virtual const
Gets a child node by index (used by editors inheriting from AnimationRootNode).
Dictionary _get_child_nodes ( ) virtual const
Gets all children nodes in order as a name: node
dictionary. Only useful when inheriting AnimationRootNode.
Variant _get_parameter_default_value ( StringName parameter ) virtual const
Gets the default value of a parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees.
Array _get_parameter_list ( ) virtual const
Gets the property information for parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees. Format is similar to Object.get_property_list.
bool _has_filter ( ) virtual const
Returns whether you want the blend tree editor to display filter editing on this node.
User-defined callback called when a custom node is processed. The time
parameter is a relative delta, unless seek
is true
, in which case it is absolute.
Here, call the blend_input, blend_node or blend_animation functions. You can also use get_parameter and set_parameter to modify local memory.
This function should return the time left for the current animation to finish (if unsure, pass the value from the main blend being called).
void add_input ( String name )
Adds an input to the node. This is only useful for nodes created for use in an AnimationNodeBlendTree.
void blend_animation ( StringName animation, float time, float delta, bool seeked, float blend, int pingponged=0 )
Blend an animation by blend
amount (name must be valid in the linked AnimationPlayer). A time
and delta
may be passed, as well as whether seek
happened.
float blend_input ( int input_index, float time, bool seek, float blend, FilterAction filter=0, bool optimize=true )
Blend an input. This is only useful for nodes created for an AnimationNodeBlendTree. The time
parameter is a relative delta, unless seek
is true
, in which case it is absolute. A filter mode may be optionally passed (see FilterAction for options).
float blend_node ( StringName name, AnimationNode node, float time, bool seek, float blend, FilterAction filter=0, bool optimize=true )
Blend another animation node (in case this node contains children animation nodes). This function is only useful if you inherit from AnimationRootNode instead, else editors will not display your node for addition.
int get_input_count ( ) const
Amount of inputs in this node, only useful for nodes that go into AnimationNodeBlendTree.
Gets the name of an input by index.
Variant get_parameter ( StringName name ) const
Gets the value of a parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees.
Returns whether the given path is filtered.
void remove_input ( int index )
Removes an input, call this only when inactive.
Adds or removes a path for the filter.
void set_parameter ( StringName name, Variant value )
Sets a custom parameter. These are used as local memory, because resources can be reused across the tree or scenes.