b4ca613138
Add clarification to docs to explain that when an `AnimationPlayer`
object is paired with an `AnimationTree`, several properties and
methods exposed by the `AnimationPlayer` class may not work as expected.
The issues occur because an `AnimationTree` runs independently, and
uses its member `AnimationPlayer* player` primarily for its
`Map<StringName, AnimationData> animation_set`.
Added descriptions for `root_motion_track` and `get_root_motion_transform`.
(cherry picked from commit 0451248ff1
)
71 lines
3.8 KiB
XML
71 lines
3.8 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="AnimationTree" inherits="Node" version="3.2">
|
|
<brief_description>
|
|
A node to be used for advanced animation transitions in an [AnimationPlayer].
|
|
</brief_description>
|
|
<description>
|
|
Note: 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>https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html</link>
|
|
<link>https://github.com/godotengine/tps-demo</link>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="advance">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="delta" type="float">
|
|
</argument>
|
|
<description>
|
|
Manually advance the animations by the specified time (in seconds).
|
|
</description>
|
|
</method>
|
|
<method name="get_root_motion_transform" qualifiers="const">
|
|
<return type="Transform">
|
|
</return>
|
|
<description>
|
|
Retrieve the motion of the [member root_motion_track] as a [Transform] that can be used elsewhere. If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_TRANSFORM], returns an identity transformation.
|
|
</description>
|
|
</method>
|
|
<method name="rename_parameter">
|
|
<return type="void">
|
|
</return>
|
|
<argument index="0" name="old_name" type="String">
|
|
</argument>
|
|
<argument index="1" name="new_name" type="String">
|
|
</argument>
|
|
<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="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_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="AnimationTree.AnimationProcessMode" default="1">
|
|
The process mode of this [AnimationTree]. See [enum AnimationProcessMode] 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_TRANSFORM], the transformation will be cancelled visually, and the animation will appear to stay in place.
|
|
</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="AnimationProcessMode">
|
|
The animations will progress during the physics frame (i.e. [method Node._physics_process]).
|
|
</constant>
|
|
<constant name="ANIMATION_PROCESS_IDLE" value="1" enum="AnimationProcessMode">
|
|
The animations will progress during the idle frame (i.e. [method Node._process]).
|
|
</constant>
|
|
<constant name="ANIMATION_PROCESS_MANUAL" value="2" enum="AnimationProcessMode">
|
|
The animations will only progress manually (see [method advance]).
|
|
</constant>
|
|
</constants>
|
|
</class>
|