Up to date

This page is up to date for Godot 4.1. If you still find outdated information, please open an issue.

AnimationNodeBlendTree

Inherits: AnimationRootNode < AnimationNode < Resource < RefCounted < Object

A sub-tree of many type AnimationNodes used for complex animations. Used by AnimationTree.

Description

This animation node may contain a sub-tree of any other type animation nodes, such as AnimationNodeTransition, AnimationNodeBlend2, AnimationNodeBlend3, AnimationNodeOneShot, etc. This is one of the most commonly used animation node roots.

An AnimationNodeOutput node named output is created by default.

Tutorials

Properties

Vector2

graph_offset

Vector2(0, 0)

Methods

void

add_node ( StringName name, AnimationNode node, Vector2 position=Vector2(0, 0) )

void

connect_node ( StringName input_node, int input_index, StringName output_node )

void

disconnect_node ( StringName input_node, int input_index )

AnimationNode

get_node ( StringName name ) const

Vector2

get_node_position ( StringName name ) const

bool

has_node ( StringName name ) const

void

remove_node ( StringName name )

void

rename_node ( StringName name, StringName new_name )

void

set_node_position ( StringName name, Vector2 position )


Signals

node_changed ( StringName node_name )

Emitted when the input port information is changed.


Constants

CONNECTION_OK = 0

The connection was successful.

CONNECTION_ERROR_NO_INPUT = 1

The input node is null.

CONNECTION_ERROR_NO_INPUT_INDEX = 2

The specified input port is out of range.

CONNECTION_ERROR_NO_OUTPUT = 3

The output node is null.

CONNECTION_ERROR_SAME_NODE = 4

Input and output nodes are the same.

CONNECTION_ERROR_CONNECTION_EXISTS = 5

The specified connection already exists.


Property Descriptions

Vector2 graph_offset = Vector2(0, 0)

  • void set_graph_offset ( Vector2 value )

  • Vector2 get_graph_offset ( )

The global offset of all sub animation nodes.


Method Descriptions

void add_node ( StringName name, AnimationNode node, Vector2 position=Vector2(0, 0) )

Adds an AnimationNode at the given position. The name is used to identify the created sub animation node later.


void connect_node ( StringName input_node, int input_index, StringName output_node )

Connects the output of an AnimationNode as input for another AnimationNode, at the input port specified by input_index.


void disconnect_node ( StringName input_node, int input_index )

Disconnects the animation node connected to the specified input.


AnimationNode get_node ( StringName name ) const

Returns the sub animation node with the specified name.


Vector2 get_node_position ( StringName name ) const

Returns the position of the sub animation node with the specified name.


bool has_node ( StringName name ) const

Returns true if a sub animation node with specified name exists.


void remove_node ( StringName name )

Removes a sub animation node.


void rename_node ( StringName name, StringName new_name )

Changes the name of a sub animation node.


void set_node_position ( StringName name, Vector2 position )

Modifies the position of a sub animation node.