2018-07-26 17:56:21 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-07-06 16:08:05 +08:00
<class name= "AnimationNodeBlendTree" inherits= "AnimationRootNode" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2018-07-26 17:56:21 +08:00
<brief_description >
2023-04-30 22:32:18 +08:00
A sub-tree of many type [AnimationNode]s used for complex animations. Used by [AnimationTree].
2018-07-26 17:56:21 +08:00
</brief_description>
<description >
2023-04-30 22:32:18 +08:00
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.
2022-03-21 18:02:40 +08:00
An [AnimationNodeOutput] node named [code]output[/code] is created by default.
2018-07-26 17:56:21 +08:00
</description>
<tutorials >
2023-04-28 23:16:44 +08:00
<link title= "Using AnimationTree" > $DOCS_URL/tutorials/animation/animation_tree.html</link>
2018-07-26 17:56:21 +08:00
</tutorials>
<methods >
<method name= "add_node" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
<param index= "1" name= "node" type= "AnimationNode" />
<param index= "2" name= "position" type= "Vector2" default= "Vector2(0, 0)" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Adds an [AnimationNode] at the given [param position]. The [param name] is used to identify the created sub animation node later.
2018-07-26 17:56:21 +08:00
</description>
</method>
<method name= "connect_node" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "input_node" type= "StringName" />
<param index= "1" name= "input_index" type= "int" />
<param index= "2" name= "output_node" type= "StringName" />
2018-07-26 17:56:21 +08:00
<description >
2022-08-13 01:51:01 +08:00
Connects the output of an [AnimationNode] as input for another [AnimationNode], at the input port specified by [param input_index].
2018-07-26 17:56:21 +08:00
</description>
</method>
<method name= "disconnect_node" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "input_node" type= "StringName" />
<param index= "1" name= "input_index" type= "int" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Disconnects the animation node connected to the specified input.
2018-07-26 17:56:21 +08:00
</description>
</method>
<method name= "get_node" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "AnimationNode" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Returns the sub animation node with the specified [param name].
2018-07-26 17:56:21 +08:00
</description>
</method>
2018-08-21 06:35:30 +08:00
<method name= "get_node_position" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "Vector2" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
2018-08-21 06:35:30 +08:00
<description >
2023-04-30 22:32:18 +08:00
Returns the position of the sub animation node with the specified [param name].
2018-08-21 06:35:30 +08:00
</description>
</method>
2018-07-26 17:56:21 +08:00
<method name= "has_node" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Returns [code]true[/code] if a sub animation node with specified [param name] exists.
2018-07-26 17:56:21 +08:00
</description>
</method>
<method name= "remove_node" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Removes a sub animation node.
2018-07-26 17:56:21 +08:00
</description>
</method>
<method name= "rename_node" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
<param index= "1" name= "new_name" type= "StringName" />
2018-07-26 17:56:21 +08:00
<description >
2023-04-30 22:32:18 +08:00
Changes the name of a sub animation node.
2018-07-26 17:56:21 +08:00
</description>
</method>
2018-08-21 06:35:30 +08:00
<method name= "set_node_position" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "name" type= "StringName" />
<param index= "1" name= "position" type= "Vector2" />
2018-08-21 06:35:30 +08:00
<description >
2023-04-30 22:32:18 +08:00
Modifies the position of a sub animation node.
2018-08-21 06:35:30 +08:00
</description>
</method>
2018-07-26 17:56:21 +08:00
</methods>
<members >
2019-09-25 01:45:03 +08:00
<member name= "graph_offset" type= "Vector2" setter= "set_graph_offset" getter= "get_graph_offset" default= "Vector2(0, 0)" >
2023-04-30 22:32:18 +08:00
The global offset of all sub animation nodes.
2018-07-26 17:56:21 +08:00
</member>
</members>
2022-09-01 22:00:55 +08:00
<signals >
<signal name= "node_changed" >
<param index= "0" name= "node_name" type= "StringName" />
<description >
Emitted when the input port information is changed.
</description>
</signal>
</signals>
2018-07-26 17:56:21 +08:00
<constants >
<constant name= "CONNECTION_OK" value= "0" >
2020-03-04 02:21:21 +08:00
The connection was successful.
2018-07-26 17:56:21 +08:00
</constant>
<constant name= "CONNECTION_ERROR_NO_INPUT" value= "1" >
2020-03-04 02:21:21 +08:00
The input node is [code]null[/code].
2018-07-26 17:56:21 +08:00
</constant>
<constant name= "CONNECTION_ERROR_NO_INPUT_INDEX" value= "2" >
2020-03-04 02:21:21 +08:00
The specified input port is out of range.
2018-07-26 17:56:21 +08:00
</constant>
<constant name= "CONNECTION_ERROR_NO_OUTPUT" value= "3" >
2020-03-04 02:21:21 +08:00
The output node is [code]null[/code].
2018-07-26 17:56:21 +08:00
</constant>
<constant name= "CONNECTION_ERROR_SAME_NODE" value= "4" >
2020-03-04 02:21:21 +08:00
Input and output nodes are the same.
2018-07-26 17:56:21 +08:00
</constant>
<constant name= "CONNECTION_ERROR_CONNECTION_EXISTS" value= "5" >
2020-03-04 02:21:21 +08:00
The specified connection already exists.
2018-07-26 17:56:21 +08:00
</constant>
</constants>
</class>