75a8606b83
Allows specifying an expression as a condition for state machine transitions. This gives much greater flexibility for creating complex state machines. By directly interfacing with the script code, it is possible to create complex animation advance condition for switching between states. Ensure assigning AnimationTreeStateMachineTransition base expression node in editor is relative to current AnimationTree node. Allow setting an expression base node on the AnimationTree itself. Co-Authored-By: reduz <reduzio@gmail.com>
68 lines
4.5 KiB
XML
68 lines
4.5 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="AnimationTree" inherits="Node" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
|
|
<brief_description>
|
|
A node to be used for advanced animation transitions in an [AnimationPlayer].
|
|
</brief_description>
|
|
<description>
|
|
A node to be used for advanced animation transitions in an [AnimationPlayer].
|
|
[b]Note:[/b] When linked with an [AnimationPlayer], several properties and methods of the corresponding [AnimationPlayer] will not function as expected. Playback and transitions should be handled using only the [AnimationTree] and its constituent [AnimationNode](s). The [AnimationPlayer] node should be used solely for adding, deleting, and editing animations.
|
|
</description>
|
|
<tutorials>
|
|
<link title="Using AnimationTree">$DOCS_URL/tutorials/animation/animation_tree.html</link>
|
|
<link title="Third Person Shooter Demo">https://godotengine.org/asset-library/asset/678</link>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="advance">
|
|
<return type="void" />
|
|
<argument index="0" name="delta" type="float" />
|
|
<description>
|
|
Manually advance the animations by the specified time (in seconds).
|
|
</description>
|
|
</method>
|
|
<method name="get_root_motion_transform" qualifiers="const">
|
|
<return type="Transform3D" />
|
|
<description>
|
|
Retrieve the motion of the [member root_motion_track] as a [Transform3D] that can be used elsewhere. If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_POSITION_3D], [constant Animation.TYPE_SCALE_3D] or [constant Animation.TYPE_ROTATION_3D], returns an identity transformation. See also [member root_motion_track] and [RootMotionView].
|
|
</description>
|
|
</method>
|
|
<method name="rename_parameter">
|
|
<return type="void" />
|
|
<argument index="0" name="old_name" type="String" />
|
|
<argument index="1" name="new_name" type="String" />
|
|
<description>
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="active" type="bool" setter="set_active" getter="is_active" default="false">
|
|
If [code]true[/code], the [AnimationTree] will be processing.
|
|
</member>
|
|
<member name="advance_expression_base_node" type="NodePath" setter="set_advance_expression_base_node" getter="get_advance_expression_base_node" default="NodePath(".")">
|
|
The path to the [Node] used to evaluate the AnimationNode [Expression] if one is not explictly specified internally.
|
|
</member>
|
|
<member name="anim_player" type="NodePath" setter="set_animation_player" getter="get_animation_player" default="NodePath("")">
|
|
The path to the [AnimationPlayer] used for animating.
|
|
</member>
|
|
<member name="process_callback" type="int" setter="set_process_callback" getter="get_process_callback" enum="AnimationTree.AnimationProcessCallback" default="1">
|
|
The process mode of this [AnimationTree]. See [enum AnimationProcessCallback] for available modes.
|
|
</member>
|
|
<member name="root_motion_track" type="NodePath" setter="set_root_motion_track" getter="get_root_motion_track" default="NodePath("")">
|
|
The path to the Animation track used for root motion. Paths must be valid scene-tree paths to a node, and must be specified starting from the parent node of the node that will reproduce the animation. To specify a track that controls properties or bones, append its name after the path, separated by [code]":"[/code]. For example, [code]"character/skeleton:ankle"[/code] or [code]"character/mesh:transform/local"[/code].
|
|
If the track has type [constant Animation.TYPE_POSITION_3D], [constant Animation.TYPE_ROTATION_3D] or [constant Animation.TYPE_SCALE_3D] the transformation will be cancelled visually, and the animation will appear to stay in place. See also [method get_root_motion_transform] and [RootMotionView].
|
|
</member>
|
|
<member name="tree_root" type="AnimationNode" setter="set_tree_root" getter="get_tree_root">
|
|
The root animation node of this [AnimationTree]. See [AnimationNode].
|
|
</member>
|
|
</members>
|
|
<constants>
|
|
<constant name="ANIMATION_PROCESS_PHYSICS" value="0" enum="AnimationProcessCallback">
|
|
The animations will progress during the physics frame (i.e. [method Node._physics_process]).
|
|
</constant>
|
|
<constant name="ANIMATION_PROCESS_IDLE" value="1" enum="AnimationProcessCallback">
|
|
The animations will progress during the idle frame (i.e. [method Node._process]).
|
|
</constant>
|
|
<constant name="ANIMATION_PROCESS_MANUAL" value="2" enum="AnimationProcessCallback">
|
|
The animations will only progress manually (see [method advance]).
|
|
</constant>
|
|
</constants>
|
|
</class>
|