Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
AnimationPlayer¶
Contenedor y reproductor de recursos de Animation.
Descripción¶
Un reproductor de animacion es utilizado para reproduccion de proposito general de recursos de Animation. Esto contiene un diccionario de animaciones (referenciada por nombre) y tiempos de mezcla personalizados entre sus transiciones. Adicionalmente, los animaciones pueden ser reproducidas y mezcladas en diferentes canales.
AnimationPlayer
es mas conveniente que Tween para animaciones donde tu sabes los valores finales por adelantado. Por ejemplo desvanecer una pantalla y que vuelva a aparecer es un trabajo mas facil de hacer con un nodo AnimationPlayer
gracias a las herramientas de animacion suministradas por el editor. Este ejemplo partircular puede tambien ser implementado con un node Tween, pero requiere hacer todo por codigo.
Actualizar las propiedades de la animacion objetivo ocurren en tiempo de ejecucion.
Tutoriales¶
Propiedades¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Métodos¶
add_animation ( String name, Animation animation ) |
|
void |
|
animation_get_next ( String anim_from ) const |
|
void |
animation_set_next ( String anim_from, String anim_to ) |
void |
clear_caches ( ) |
void |
clear_queue ( ) |
find_animation ( Animation animation ) const |
|
get_animation ( String name ) const |
|
get_animation_list ( ) const |
|
get_blend_time ( String anim_from, String anim_to ) const |
|
get_playing_speed ( ) const |
|
get_queue ( ) |
|
has_animation ( String name ) const |
|
is_playing ( ) const |
|
void |
play ( String name="", float custom_blend=-1, float custom_speed=1.0, bool from_end=false ) |
void |
play_backwards ( String name="", float custom_blend=-1 ) |
void |
|
void |
remove_animation ( String name ) |
void |
rename_animation ( String name, String newname ) |
void |
|
void |
set_blend_time ( String anim_from, String anim_to, float sec ) |
void |
Señales¶
Emitted when a queued animation plays after the previous animation was finished. See queue.
Note: The signal is not emitted when the animation is changed via play or from AnimationTree.
animation_finished ( String anim_name )
Notifica cuando una animación ha terminado de reproducirse.
animation_started ( String anim_name )
Notifica cuando una animación comienza a reproducirse.
caches_cleared ( )
Notifica cuando las cachés se han limpiado, ya sea automáticamente o manualmente a través del clear_caches.
Enumeraciones¶
enum AnimationProcessMode:
ANIMATION_PROCESS_PHYSICS = 0 --- Animación del proceso durante el proceso de la física. Esto es especialmente útil cuando se animan los cuerpos físicos.
ANIMATION_PROCESS_IDLE = 1 --- Animación del proceso durante el proceso de inactividad.
ANIMATION_PROCESS_MANUAL = 2 --- No procese la animación. Utilice advance para procesar la animación manualmente.
enum AnimationMethodCallMode:
ANIMATION_METHOD_CALL_DEFERRED = 0 --- Metodos de procesos por lotes llamados durante el proceso de animación, y despues que los eventos son procesados hacer los llamados. Esto evita los errores que implican borrar nodos o modificar el AnimationPlayer mientras se está reproduciendo.
ANIMATION_METHOD_CALL_IMMEDIATE = 1 --- Hace llamadas a método inmediatamente cuando se alcanza en la animación.
Descripciones de Propiedades¶
String assigned_animation
Setter |
set_assigned_animation(value) |
Getter |
get_assigned_animation() |
Si se está reproduciendo, la animación actual; si no, la última animación reproducida. Cuando se establece, cambiaría la animación, pero no la reproduciría a menos que se esté reproduciendo actualmente. Ver también current_animation.
String autoplay
Default |
|
Setter |
set_autoplay(value) |
Getter |
get_autoplay() |
El nombre de la animación que se reproducirá cuando se cargue la escena.
String current_animation
Default |
|
Setter |
set_current_animation(value) |
Getter |
get_current_animation() |
The name of the currently playing animation. If no animation is playing, the property's value is an empty string. Changing this value does not restart the animation. See play for more information on playing animations.
Note: While this property appears in the inspector, it's not meant to be edited, and it's not saved in the scene. This property is mainly used to get the currently playing animation, and internally for animation playback tracks. For more information, see Animation.
float current_animation_length
Getter |
get_current_animation_length() |
La duración (en segundos) de la animación que se está reproduciendo actualmente.
float current_animation_position
Getter |
get_current_animation_position() |
La posición (en segundos) de la animación que se está reproduciendo.
AnimationMethodCallMode method_call_mode
Default |
|
Setter |
set_method_call_mode(value) |
Getter |
get_method_call_mode() |
El modo de llamada a utilizar para las Call Method Tracks.
bool playback_active
Setter |
set_active(value) |
Getter |
is_active() |
Si true
, actualiza las animaciones en respuesta a las notificaciones relacionadas con el proceso.
float playback_default_blend_time
Default |
|
Setter |
set_default_blend_time(value) |
Getter |
get_default_blend_time() |
El tiempo por defecto para mezclar las animaciones. Va de 0 a 4096 con una precisión de 0,01.
AnimationProcessMode playback_process_mode
Default |
|
Setter |
set_animation_process_mode(value) |
Getter |
get_animation_process_mode() |
La notificación de proceso en la que se actualizan las animaciones.
float playback_speed
Default |
|
Setter |
set_speed_scale(value) |
Getter |
get_speed_scale() |
La relación de escala de velocidad. Por ejemplo, si este valor es 1, entonces la animación se reproduce a velocidad normal. Si es 0,5, entonces se reproduce a media velocidad. Si es 2, entonces se reproduce a doble velocidad.
bool reset_on_save
Default |
|
Setter |
set_reset_on_save_enabled(value) |
Getter |
is_reset_on_save_enabled() |
This is used by the editor. If set to true
, the scene will be saved with the effects of the reset animation applied (as if it had been seeked to time 0), then reverted after saving.
In other words, the saved scene file will contain the "default pose", as defined by the reset animation, if any, with the editor keeping the values that the nodes had before saving.
NodePath root_node
Default |
|
Setter |
set_root(value) |
Getter |
get_root() |
El nodo desde el cual viajarán las referencias de la ruta de nodos.
Descripciones de Métodos¶
Añade una animation
al reproductor con la llave name
.
void advance ( float delta )
Cambia la positicon en la linea de tiempo de las animaciones e inmediatamente actualiza la animacion. delta
es el tiempo en segundos a cambiar. Eventos entre el frame actual y delta
son manejados.
Devuelve el nombre de la proxima animacion en la cola.
Lanza la animacion anim_to
cuando la animacion anim_from
se completa.
void clear_caches ( )
AnimationPlayer
cachea nodos animados. Puede no notarse si un nodo desaparece;clear_caches fuerza a la cache a actualizarse de nuevo.
void clear_queue ( )
Limpia todas las colas, animaciones no reproducidas.
Devuelve el nombre de animation
or una string vacia si no se encuentra.
Devuelve la Animation con clave name
or null
si no se encuentra.
PoolStringArray get_animation_list ( ) const
Devuelve la lista de nombres de animaciones almacenadas.
Obtiene el nombre de mezcla (en segundos) entre dos animaciones, referenciado por sus nombres.
float get_playing_speed ( ) const
Obtiene la velocidad de ejecucion de la animacion actual o 0 sino esta siendo reproducida. Esta velocidad es la propiedad playback_speed multiplicada por el argumento custom_speed
especificado cuando se llama al metodo play.
PoolStringArray get_queue ( )
Devuelve una lista de los nombres de las animaciones que están actualmente en cola para ser reproducidas.
Devuelve true
si el AnimationPlayer
almacena una Animation con la clave name
.
bool is_playing ( ) const
Devuelve true
si se esta reproduciendo una animación.
Reproduce la animación con la clave name
. Se pueden establecer tiempos de mezcla y velocidad personalizados. Si custom_speed
es negativo y from_end
es true
, la animación se reproducirá hacia atrás (lo que equivale a llamar a play_backwards).
El AnimationPlayer
mantiene un registro de su animación actual o la última que se ha reproducido con assigned_animation. Si se llama a este método con ese mismo nombre de animación name
, o sin el parámetro name
, la animación asignada se reproducirá de nuevo si se ha detenido, o se reiniciará si se ha detenido (ver stop tanto para la pausa como para la parada). Si la animación ya se estaba reproduciendo, seguirá reproduciéndose.
Nota: La animación se actualizará la próxima vez que se procese el AnimationPlayer
. Si se actualizan otras variables al mismo tiempo que esta llamada, puede que se actualicen demasiado pronto. Para ejecutar la actualización inmediatamente, llame a advance(0)
.
Reproduce la animación con la clave name
al revés.
Este método es una abreviatura de play con custom_speed = -1.0
y from_end = true
, por lo que para mayor información vea su descripción.
void queue ( String name )
Pone en cola una animación para su reproducción una vez que la actual haya terminado.
Nota: Si una animación en bucle se está reproduciendo actualmente, la animación en cola nunca se reproducirá a menos que la animación en bucle se detenga de alguna manera.
void remove_animation ( String name )
Elimina la animación con la clave name
.
Renombra una animación existente con la clave name
a newname
.
Busca la animación hasta el punto en el tiempo de seconds
. Si update
es true
, la animación se actualiza también, de lo contrario se actualiza en el momento del proceso. Los eventos entre el fotograma actual y seconds
se saltan.
Especifica un tiempo de mezcla (en segundos) entre dos animaciones, referenciadas por sus nombres.
void stop ( bool reset=true )
Detiene o pausa la animación que se está reproduciendo. Si reset
es true
, la posición de la animación se restablece a 0
y la velocidad de reproducción se restablece a 1.0
.
Si reset
es false
, se mantendrá la current_animation_position y llamará a play o play_backwards sin argumentos o con el mismo nombre de animación que assigned_animation reanudará la animación.