Animation¶
Inherits: Resource < Reference < Object
Contiene datos usados para animar todo en el motor.
Descripción¶
An Animation resource contains data used to animate everything in the engine. Animations are divided into tracks, and each track must be linked to a node. The state of that node can be changed through time, by adding timed keys (events) to the track.
# This creates an animation that makes the node "Enemy" move to the right by
# 100 pixels in 0.5 seconds.
var animation = Animation.new()
var track_index = animation.add_track(Animation.TYPE_VALUE)
animation.track_set_path(track_index, "Enemy:position:x")
animation.track_insert_key(track_index, 0.0, 0)
animation.track_insert_key(track_index, 0.5, 100)
Animations are just data containers, and must be added to nodes such as an AnimationPlayer or AnimationTreePlayer to be played back. Animation tracks have different types, each with its own set of dedicated methods. Check TrackType to see available types.
Tutoriales¶
Propiedades¶
|
||
|
||
|
Métodos¶
animation_track_get_key_animation ( int track_idx, int key_idx ) const |
|
animation_track_insert_key ( int track_idx, float time, String animation ) |
|
void |
animation_track_set_key_animation ( int track_idx, int key_idx, String animation ) |
audio_track_get_key_end_offset ( int track_idx, int key_idx ) const |
|
audio_track_get_key_start_offset ( int track_idx, int key_idx ) const |
|
audio_track_get_key_stream ( int track_idx, int key_idx ) const |
|
audio_track_insert_key ( int track_idx, float time, Resource stream, float start_offset=0, float end_offset=0 ) |
|
void |
audio_track_set_key_end_offset ( int track_idx, int key_idx, float offset ) |
void |
audio_track_set_key_start_offset ( int track_idx, int key_idx, float offset ) |
void |
audio_track_set_key_stream ( int track_idx, int key_idx, Resource stream ) |
bezier_track_get_key_in_handle ( int track_idx, int key_idx ) const |
|
bezier_track_get_key_out_handle ( int track_idx, int key_idx ) const |
|
bezier_track_get_key_value ( int track_idx, int key_idx ) const |
|
bezier_track_insert_key ( int track_idx, float time, float value, Vector2 in_handle=Vector2( 0, 0 ), Vector2 out_handle=Vector2( 0, 0 ) ) |
|
bezier_track_interpolate ( int track_idx, float time ) const |
|
void |
bezier_track_set_key_in_handle ( int track_idx, int key_idx, Vector2 in_handle ) |
void |
bezier_track_set_key_out_handle ( int track_idx, int key_idx, Vector2 out_handle ) |
void |
bezier_track_set_key_value ( int track_idx, int key_idx, float value ) |
void |
clear ( ) |
void |
copy_track ( int track_idx, Animation to_animation ) |
find_track ( NodePath path ) const |
|
get_track_count ( ) const |
|
method_track_get_key_indices ( int track_idx, float time_sec, float delta ) const |
|
method_track_get_name ( int track_idx, int key_idx ) const |
|
method_track_get_params ( int track_idx, int key_idx ) const |
|
void |
remove_track ( int track_idx ) |
track_find_key ( int track_idx, float time, bool exact=false ) const |
|
track_get_interpolation_loop_wrap ( int track_idx ) const |
|
track_get_interpolation_type ( int track_idx ) const |
|
track_get_key_count ( int track_idx ) const |
|
track_get_key_time ( int track_idx, int key_idx ) const |
|
track_get_key_transition ( int track_idx, int key_idx ) const |
|
track_get_key_value ( int track_idx, int key_idx ) const |
|
track_get_path ( int track_idx ) const |
|
track_get_type ( int track_idx ) const |
|
void |
track_insert_key ( int track_idx, float time, Variant key, float transition=1 ) |
track_is_enabled ( int track_idx ) const |
|
track_is_imported ( int track_idx ) const |
|
void |
track_move_down ( int track_idx ) |
void |
track_move_to ( int track_idx, int to_idx ) |
void |
track_move_up ( int track_idx ) |
void |
track_remove_key ( int track_idx, int key_idx ) |
void |
track_remove_key_at_position ( int track_idx, float position ) |
void |
track_set_enabled ( int track_idx, bool enabled ) |
void |
track_set_imported ( int track_idx, bool imported ) |
void |
track_set_interpolation_loop_wrap ( int track_idx, bool interpolation ) |
void |
track_set_interpolation_type ( int track_idx, InterpolationType interpolation ) |
void |
track_set_key_time ( int track_idx, int key_idx, float time ) |
void |
track_set_key_transition ( int track_idx, int key_idx, float transition ) |
void |
track_set_key_value ( int track_idx, int key, Variant value ) |
void |
track_set_path ( int track_idx, NodePath path ) |
void |
track_swap ( int track_idx, int with_idx ) |
transform_track_insert_key ( int track_idx, float time, Vector3 location, Quat rotation, Vector3 scale ) |
|
transform_track_interpolate ( int track_idx, float time_sec ) const |
|
value_track_get_key_indices ( int track_idx, float time_sec, float delta ) const |
|
value_track_get_update_mode ( int track_idx ) const |
|
value_track_interpolate ( int track_idx, float time_sec ) const |
|
void |
value_track_set_update_mode ( int track_idx, UpdateMode mode ) |
Señales¶
tracks_changed ( )
Emitido cuando hay un cambio en la lista de pistas, por ejemplo, las pistas se añaden, se mueven o han cambiado de camino.
Enumeraciones¶
enum TrackType:
TYPE_VALUE = 0 --- Las pistas de valores establecen valores en las propiedades de los nodos, pero sólo los que pueden ser interpolados.
TYPE_TRANSFORM = 1 --- Las pistas de transformación se usan para cambiar las transformaciones locales de los nodos o los huesos del esqueleto. Las transiciones se interpolan.
TYPE_METHOD = 2 --- El método rastrea las funciones de llamada con argumentos dados por clave.
TYPE_BEZIER = 3 --- Las pistas de Bezier se usan para interpolar un valor usando curvas personalizadas. También se pueden utilizar para animar sub-propiedades de vectores y colores (por ejemplo, el valor alfa de un Color).
TYPE_AUDIO = 4 --- Las pistas de audio se utilizan para reproducir un stream de audio con cualquier tipo de AudioStreamPlayer. El stream puede ser recortado y previsualizado en la animación.
TYPE_ANIMATION = 5 --- Las pistas de animación reproducen las animaciones en otros nodos AnimationPlayer.
enum InterpolationType:
INTERPOLATION_NEAREST = 0 --- No hay interpolación (valor más cercano).
INTERPOLATION_LINEAR = 1 --- Interpolación lineal.
INTERPOLATION_CUBIC = 2 --- Interpolación cúbica.
enum UpdateMode:
UPDATE_CONTINUOUS = 0 --- Actualización entre fotogramas clave.
UPDATE_DISCRETE = 1 --- Actualizar los fotogramas clave y mantener el valor.
UPDATE_TRIGGER = 2 --- Actualización de los fotogramas clave.
UPDATE_CAPTURE = 3 --- Igual que la interpolación lineal, pero también interpola a partir del valor actual (es decir, dinámicamente en tiempo de ejecución) si la primera clave no está en 0 segundos.
Descripciones de Propiedades¶
float length
Default |
|
Setter |
set_length(value) |
Getter |
get_length() |
La duración total de la animación (en segundos).
Nota: La longitud no está delimitada por la última clave, ya que ésta puede estar antes o después del final para asegurar una correcta interpolación y bucle.
bool loop
Default |
|
Setter |
set_loop(value) |
Getter |
has_loop() |
A flag indicating that the animation must loop. This is used for correct interpolation of animation cycles, and for hinting the player that it must restart the animation.
float step
Default |
|
Setter |
set_step(value) |
Getter |
get_step() |
El valor del paso de la animación.
Descripciones de Métodos¶
Añade una pista a la animación.
Devuelve el nombre de la animación en la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de animación.
Inserta una clave con el valor animation
en el time
dado (en segundos). El track_idx
debe ser el índice de una pista de animación.
Establece la clave identificada por key_idx
como valor de animación
. El track_idx
debe ser el índice de una pista de animación.
Devuelve el desplazamiento final de la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de audio.
El dezplazamiento final es el número de segundos que se cortan al final de la pista de audio.
Devuelve el desplazamiento inicial de la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de audio.
El desplazamiento de inicio es el número de segundos cortados al principio de la pista de audio.
Devuelve el stream de audio de la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de audio.
int audio_track_insert_key ( int track_idx, float time, Resource stream, float start_offset=0, float end_offset=0 )
Inserta una clave de pista de Audio en el time
dado en segundos. El track_idx
debe ser el índice de una Pista de Audio.
stream
es el recurso de AudioStream para reproducir. start_offset
es el número de segundos que se cortan al principio del stream de audio, mientras que end_offset
está al final.
Establece el desplazamiento final de la clave identificada por key_idx
como el valor de offset
. El track_idx
debe ser el índice de una pista de audio.
Establece el desplazamiento inicial de la clave identificada por key_idx
como el valor de offset
. El track_idx
debe ser el índice de una pista de audio.
Sets the stream of the key identified by key_idx
to value stream
. The track_idx
must be the index of an Audio Track.
Devuelve el in handle de la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de Bezier.
Devuelve el out handle de la llave identificada por key_idx
. El track_idx
debe ser el índice de una pista de Bezier.
Devuelve el valor de la clave identificada por key_idx
. El track_idx
debe ser el índice de una pista de Bezier.
int bezier_track_insert_key ( int track_idx, float time, float value, Vector2 in_handle=Vector2( 0, 0 ), Vector2 out_handle=Vector2( 0, 0 ) )
Inserta una CLAVE en una pista de Bezier en el time
dado en segundos. El track_idx
debe ser el índice de una pista de Besier.
in_handle
es el peso del lado izquierdo del punto de la curva de Bezier añadido, out_handle
es el del lado derecho, mientras que value
es el valor actual en este punto.
Devuelve el valor interpolado en el time
dado (en segundos). El track_idx
debe ser el índice de una pista de Bezier.
Establece el in handle de la clave identificada por key_idx
como el valor de in_handle
. El track_idx
debe ser el índice de una pista de Bezier.
Establece el out handle de la llave identificada por key_idx
como el valor de out_handle
. El track_idx
debe ser el índice de una pista de Bezier.
Establece el valor de la clave identificada por key_idx
al valor dado. El track_idx
debe ser el índice de una pista de Bezier.
void clear ( )
Limpiar la animacion (limpia todas las pistas y reinicia todo).
Añade una nueva pista que es una copia de la pista dada de to_animation
.
Devuelve el índice de la pista especificada. Si la pista no se encuentra, devuelve -1.
int get_track_count ( ) const
Devuelve la cantidad de pistas en la animación.
PoolIntArray method_track_get_key_indices ( int track_idx, float time_sec, float delta ) const
Devuelve todos los índices clave de una pista de método, dada una posición y tiempo delta.
Devuelve el nombre del método de una pista de método.
Devuelve los valores de los argumentos que se llamarán en una pista del método para una clave determinada en una pista determinada.
void remove_track ( int track_idx )
Elimina una pista especificando el índice de la pista.
Encuentra el índice clave por tiempo en una pista determinada. Opcionalmente, sólo lo encuentra si se da la hora exacta.
Devuelve true
si la pista en idx
envuelve el bucle de interpolación. Las nuevas pistas envuelven el bucle de interpolación por defecto.
InterpolationType track_get_interpolation_type ( int track_idx ) const
Devuelve el tipo de interpolación de una pista determinada.
Devuelve la cantidad de claves en una pista determinada.
Devuelve la hora en la que se encuentra la clave.
Devuelve la curva de transición (relajación) para una clave específica (ver la función matemática incorporada @GDScript.ease).
Devuelve el valor de una clave determinada en una pista determinada.
Obtiene el camino de una pista. Para más información sobre el formato de la ruta, ver track_set_path.
Obtiene el tipo de pista.
Insertar una clave genérica en una pista determinada.
Devuelve true
si la pista en el índice idx
está habilitada.
Devuelve true
si la pista dada es importada. Si no, devuelve false
.
void track_move_down ( int track_idx )
Mueve una pista hacia abajo.
Cambia la posición del índice de la pista idx
a la definida en to_idx
.
void track_move_up ( int track_idx )
Mueve una pista hacia arriba.
Elimina una clave por índice en una pista dada.
Quita una clave por posición (segundos) en una pista determinada.
Habilita o deshabilita la pista dada. Las pistas están habilitadas por defecto.
Establece la pista dada como importada o no.
Si true
, la pista en idx
envuelve el bucle de interpolación.
void track_set_interpolation_type ( int track_idx, InterpolationType interpolation )
Establece el tipo de interpolación de una pista determinada.
Establece la hora de una clave existente.
Establece la curva de transición (relajación) para una clave específica (ver la función matemática incorporada @GDScript.ease).
Establece el valor de una clave existente.
Sets the path of a track. 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. Tracks that control properties or bones must append their name after the path, separated by ":"
.
For example, "character/skeleton:ankle"
or "character/mesh:transform/local"
.
Intercambia la posición del índice de la pista idx
con la pista con_idx
.
int transform_track_insert_key ( int track_idx, float time, Vector3 location, Quat rotation, Vector3 scale )
Inserte una clave de transformación para una pista de transformación.
Devuelve el valor interpolado de una pista de transformación en un momento dado (en segundos). Una array compuesto por 3 elementos: posición (Vector3), rotación (Quat) y escala (Vector3).
PoolIntArray value_track_get_key_indices ( int track_idx, float time_sec, float delta ) const
Devuelve todos los índices clave de una pista de valores, dada una posición y un tiempo delta.
UpdateMode value_track_get_update_mode ( int track_idx ) const
Devuelve el modo de actualización de una pista de valores.
Returns the interpolated value at the given time (in seconds). The track_idx
must be the index of a value track.
void value_track_set_update_mode ( int track_idx, UpdateMode mode )
Establece el modo de actualización (ver UpdateMode) de una pista de valores.