Files
godot-docs/classes/class_animationplayer.rst
T

333 lines
26 KiB
ReStructuredText

.. Generated automatically by doc/tools/makerst.py in Godot's source tree.
.. DO NOT EDIT THIS FILE, but the AnimationPlayer.xml source instead.
.. The source is found in doc/classes or modules/<name>/doc_classes.
.. _class_AnimationPlayer:
AnimationPlayer
===============
**Inherits:** :ref:`Node<class_node>` **<** :ref:`Object<class_object>`
**Category:** Core
Brief Description
-----------------
Container and player of :ref:`Animation<class_animation>` resources.
Member Functions
----------------
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`add_animation<class_AnimationPlayer_add_animation>` **(** :ref:`String<class_string>` name, :ref:`Animation<class_animation>` animation **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`advance<class_AnimationPlayer_advance>` **(** :ref:`float<class_float>` delta **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_string>` | :ref:`animation_get_next<class_AnimationPlayer_animation_get_next>` **(** :ref:`String<class_string>` anim_from **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`animation_set_next<class_AnimationPlayer_animation_set_next>` **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`clear_caches<class_AnimationPlayer_clear_caches>` **(** **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`clear_queue<class_AnimationPlayer_clear_queue>` **(** **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_string>` | :ref:`find_animation<class_AnimationPlayer_find_animation>` **(** :ref:`Animation<class_animation>` animation **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Animation<class_animation>` | :ref:`get_animation<class_AnimationPlayer_get_animation>` **(** :ref:`String<class_string>` name **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`PoolStringArray<class_poolstringarray>` | :ref:`get_animation_list<class_AnimationPlayer_get_animation_list>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_string>` | :ref:`get_autoplay<class_AnimationPlayer_get_autoplay>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_blend_time<class_AnimationPlayer_get_blend_time>` **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_string>` | :ref:`get_current_animation<class_AnimationPlayer_get_current_animation>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_current_animation_length<class_AnimationPlayer_get_current_animation_length>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_current_animation_position<class_AnimationPlayer_get_current_animation_position>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_position<class_AnimationPlayer_get_position>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_speed_scale<class_AnimationPlayer_get_speed_scale>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_animation<class_AnimationPlayer_has_animation>` **(** :ref:`String<class_string>` name **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_active<class_AnimationPlayer_is_active>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_playing<class_AnimationPlayer_is_playing>` **(** **)** const |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`play<class_AnimationPlayer_play>` **(** :ref:`String<class_string>` name="", :ref:`float<class_float>` custom_blend=-1, :ref:`float<class_float>` custom_speed=1.0, :ref:`bool<class_bool>` from_end=false **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`play_backwards<class_AnimationPlayer_play_backwards>` **(** :ref:`String<class_string>` name="", :ref:`float<class_float>` custom_blend=-1 **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`queue<class_AnimationPlayer_queue>` **(** :ref:`String<class_string>` name **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`remove_animation<class_AnimationPlayer_remove_animation>` **(** :ref:`String<class_string>` name **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`rename_animation<class_AnimationPlayer_rename_animation>` **(** :ref:`String<class_string>` name, :ref:`String<class_string>` newname **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`seek<class_AnimationPlayer_seek>` **(** :ref:`float<class_float>` seconds, :ref:`bool<class_bool>` update=false **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_active<class_AnimationPlayer_set_active>` **(** :ref:`bool<class_bool>` active **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_autoplay<class_AnimationPlayer_set_autoplay>` **(** :ref:`String<class_string>` name **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_blend_time<class_AnimationPlayer_set_blend_time>` **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to, :ref:`float<class_float>` sec **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_current_animation<class_AnimationPlayer_set_current_animation>` **(** :ref:`String<class_string>` anim **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_speed_scale<class_AnimationPlayer_set_speed_scale>` **(** :ref:`float<class_float>` speed **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`stop<class_AnimationPlayer_stop>` **(** :ref:`bool<class_bool>` reset=true **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| void | :ref:`stop_all<class_AnimationPlayer_stop_all>` **(** **)** |
+------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Signals
-------
.. _class_AnimationPlayer_animation_changed:
- **animation_changed** **(** :ref:`String<class_string>` old_name, :ref:`String<class_string>` new_name **)**
If the currently being played animation changes, this signal will notify of such change.
.. _class_AnimationPlayer_animation_finished:
- **animation_finished** **(** :ref:`String<class_string>` name **)**
Notifies when an animation finished playing.
.. _class_AnimationPlayer_animation_started:
- **animation_started** **(** :ref:`String<class_string>` name **)**
Notifies when an animation starts playing.
Member Variables
----------------
.. _class_AnimationPlayer_playback_default_blend_time:
- :ref:`float<class_float>` **playback_default_blend_time**
.. _class_AnimationPlayer_playback_process_mode:
- :ref:`int<class_int>` **playback_process_mode**
.. _class_AnimationPlayer_root_node:
- :ref:`NodePath<class_nodepath>` **root_node**
Numeric Constants
-----------------
- **ANIMATION_PROCESS_PHYSICS** = **0** --- Process animation during the physics process. This is especially useful when animating physics bodies.
- **ANIMATION_PROCESS_IDLE** = **1** --- Process animation during the idle process.
Description
-----------
An animation player is used for general purpose playback of :ref:`Animation<class_animation>` resources. It contains a dictionary of animations (referenced by name) and custom blend times between their transitions. Additionally, animations can be played and blended in different channels.
Member Function Description
---------------------------
.. _class_AnimationPlayer_add_animation:
- :ref:`int<class_int>` **add_animation** **(** :ref:`String<class_string>` name, :ref:`Animation<class_animation>` animation **)**
Add an animation resource to the player, which will be later referenced by the "name" argument.
.. _class_AnimationPlayer_advance:
- void **advance** **(** :ref:`float<class_float>` delta **)**
Used to skip ahead or skip back in an animation. Delta is the time in seconds to skip.
.. _class_AnimationPlayer_animation_get_next:
- :ref:`String<class_string>` **animation_get_next** **(** :ref:`String<class_string>` anim_from **)** const
Return the name of the next animation in the queue.
.. _class_AnimationPlayer_animation_set_next:
- void **animation_set_next** **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to **)**
Set the name of an animation that will be played after.
.. _class_AnimationPlayer_clear_caches:
- void **clear_caches** **(** **)**
The animation player creates caches for faster access to the nodes it will animate. However, if a specific node is removed, it may not notice it, so clear_caches will force the player to search for the nodes again.
.. _class_AnimationPlayer_clear_queue:
- void **clear_queue** **(** **)**
If animations are queued to play, clear them.
.. _class_AnimationPlayer_find_animation:
- :ref:`String<class_string>` **find_animation** **(** :ref:`Animation<class_animation>` animation **)** const
Find an animation name by resource.
.. _class_AnimationPlayer_get_animation:
- :ref:`Animation<class_animation>` **get_animation** **(** :ref:`String<class_string>` name **)** const
Get an :ref:`Animation<class_animation>` resource by requesting a name.
.. _class_AnimationPlayer_get_animation_list:
- :ref:`PoolStringArray<class_poolstringarray>` **get_animation_list** **(** **)** const
Get the list of names of the animations stored in the player.
.. _class_AnimationPlayer_get_autoplay:
- :ref:`String<class_string>` **get_autoplay** **(** **)** const
Return the name of the animation that will be automatically played when the scene is loaded.
.. _class_AnimationPlayer_get_blend_time:
- :ref:`float<class_float>` **get_blend_time** **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to **)** const
Get the blend time between two animations, referenced by their names.
.. _class_AnimationPlayer_get_current_animation:
- :ref:`String<class_string>` **get_current_animation** **(** **)** const
Return the name of the animation being played.
.. _class_AnimationPlayer_get_current_animation_length:
- :ref:`float<class_float>` **get_current_animation_length** **(** **)** const
Get the length (in seconds) of the currently being played animation.
.. _class_AnimationPlayer_get_current_animation_position:
- :ref:`float<class_float>` **get_current_animation_position** **(** **)** const
Get the position (in seconds) of the currently being played animation.
.. _class_AnimationPlayer_get_position:
- :ref:`float<class_float>` **get_position** **(** **)** const
Return the playback position (in seconds) in an animation channel (or channel 0 if none is provided).
.. _class_AnimationPlayer_get_speed_scale:
- :ref:`float<class_float>` **get_speed_scale** **(** **)** const
Get the speed scaling ratio in a given animation channel (or channel 0 if none is provided). Default ratio is *1* (no scaling).
.. _class_AnimationPlayer_has_animation:
- :ref:`bool<class_bool>` **has_animation** **(** :ref:`String<class_string>` name **)** const
Request whether an :ref:`Animation<class_animation>` name exist within the player.
.. _class_AnimationPlayer_is_active:
- :ref:`bool<class_bool>` **is_active** **(** **)** const
Return true if the player is active.
.. _class_AnimationPlayer_is_playing:
- :ref:`bool<class_bool>` **is_playing** **(** **)** const
Return whether an animation is playing.
.. _class_AnimationPlayer_play:
- void **play** **(** :ref:`String<class_string>` name="", :ref:`float<class_float>` custom_blend=-1, :ref:`float<class_float>` custom_speed=1.0, :ref:`bool<class_bool>` from_end=false **)**
Play a given animation by the animation name. Custom speed and blend times can be set. If custom speed is negative (-1), 'from_end' being true can play the animation backwards.
.. _class_AnimationPlayer_play_backwards:
- void **play_backwards** **(** :ref:`String<class_string>` name="", :ref:`float<class_float>` custom_blend=-1 **)**
Play a given animation by the animation name in reverse.
.. _class_AnimationPlayer_queue:
- void **queue** **(** :ref:`String<class_string>` name **)**
Queue an animation for playback once the current one is done.
.. _class_AnimationPlayer_remove_animation:
- void **remove_animation** **(** :ref:`String<class_string>` name **)**
Remove an animation from the player (by supplying the same name used to add it).
.. _class_AnimationPlayer_rename_animation:
- void **rename_animation** **(** :ref:`String<class_string>` name, :ref:`String<class_string>` newname **)**
Rename an existing animation.
.. _class_AnimationPlayer_seek:
- void **seek** **(** :ref:`float<class_float>` seconds, :ref:`bool<class_bool>` update=false **)**
Seek the animation to a given position in time (in seconds). If 'update' is true, the animation will be updated too, otherwise it will be updated at process time.
.. _class_AnimationPlayer_set_active:
- void **set_active** **(** :ref:`bool<class_bool>` active **)**
Set the player as active (playing). If false, it will do nothing.
.. _class_AnimationPlayer_set_autoplay:
- void **set_autoplay** **(** :ref:`String<class_string>` name **)**
Set the name of the animation that will be automatically played when the scene is loaded.
.. _class_AnimationPlayer_set_blend_time:
- void **set_blend_time** **(** :ref:`String<class_string>` anim_from, :ref:`String<class_string>` anim_to, :ref:`float<class_float>` sec **)**
Specify a blend time (in seconds) between two animations, referenced by their names.
.. _class_AnimationPlayer_set_current_animation:
- void **set_current_animation** **(** :ref:`String<class_string>` anim **)**
Set the current animation (even if no playback occurs). Using set_current_animation() and set_active() are similar to calling play().
.. _class_AnimationPlayer_set_speed_scale:
- void **set_speed_scale** **(** :ref:`float<class_float>` speed **)**
Set a speed scaling ratio in a given animation channel (or channel 0 if none is provided). Default ratio is *1* (no scaling).
.. _class_AnimationPlayer_stop:
- void **stop** **(** :ref:`bool<class_bool>` reset=true **)**
Stop the currently playing animation.
.. _class_AnimationPlayer_stop_all:
- void **stop_all** **(** **)**
Stop playback of animations (deprecated).