AnimationNodeStateMachinePlayback

Hereda: Resource < RefCounted < Object

Proporciona control de reproducción para un AnimationNodeStateMachine.

Descripción

Allows control of AnimationTree state machines created with AnimationNodeStateMachine. Retrieve with $AnimationTree.get("parameters/playback").

var state_machine = $AnimationTree.get("parameters/playback")
state_machine.travel("some_state")

Tutoriales

Propiedades

bool

resource_local_to_scene

true (overrides Resource)

Métodos

float

get_current_length() const

StringName

get_current_node() const

float

get_current_play_position() const

float

get_fading_from_length() const

StringName

get_fading_from_node() const

float

get_fading_from_play_position() const

float

get_fading_length() const

float

get_fading_position() const

Array[StringName]

get_travel_path() const

bool

is_playing() const

void

next()

void

start(node: StringName, reset: bool = true)

void

stop()

void

travel(to_node: StringName, reset_on_teleport: bool = true)


Señales

state_finished(state: StringName) 🔗

Emitida cuando el state finaliza la reproducción. Si state es una máquina de estados configurada en modo agrupado, sus señales se transmiten con su nombre como prefijo.

Si hay un fundido cruzado, se disparará cuando la influencia de la animación de get_fading_from_node() ya no esté presente.


state_started(state: StringName) 🔗

Emitida cuando el state inicia la reproducción. Si state es una máquina de estados configurada en modo agrupado, sus señales se transmiten con su nombre como prefijo.


Descripciones de Métodos

float get_current_length() const 🔗

Devuelve la duración del estado actual.

Nota: Es posible que cualquier AnimationRootNode pueda ser tanto un nodo como una animación. Esto significa que puede haber múltiples animaciones dentro de un único estado. La duración de la animación que tiene prioridad depende de los nodos conectados en su interior. Además, si una transición no se reinicia, se devolverá la duración restante en ese punto.


StringName get_current_node() const 🔗

Devuelve el estado de animación que se está reproduciendo actualmente.

Nota: Al usar un fundido cruzado, el estado actual cambia al siguiente estado inmediatamente después de que comience el fundido cruzado.


float get_current_play_position() const 🔗

Devuelve la posición de reproducción dentro del estado de animación actual.


float get_fading_from_length() const 🔗

Returns the playback state length of the node from get_fading_from_node(). Returns 0 if no animation fade is occurring.


StringName get_fading_from_node() const 🔗

Devuelve el estado inicial de la animación que se está desvaneciendo actualmente.


float get_fading_from_play_position() const 🔗

Returns the playback position of the node from get_fading_from_node(). Returns 0 if no animation fade is occurring.


float get_fading_length() const 🔗

Returns the length of the current fade animation. Returns 0 if no animation fade is occurring.


float get_fading_position() const 🔗

Returns the playback position of the current fade animation. Returns 0 if no animation fade is occurring.


Array[StringName] get_travel_path() const 🔗

Devuelve la ruta de viaje actual calculada internamente por el algorithmo A*.


bool is_playing() const 🔗

Devuelve true si una animacion esta reproduciendose.


void next() 🔗

Si hay una siguiente ruta por recorrido (travel) o avance automático, transiciona inmediatamente del estado actual al siguiente estado.


void start(node: StringName, reset: bool = true) 🔗

Comienza a reproducir la animación dada.

Si reset es true, la animación se reproduce desde el principio.


void stop() 🔗

Para la animacion en ejecucion.


void travel(to_node: StringName, reset_on_teleport: bool = true) 🔗

Transiciona del estado actual a otro, siguiendo la ruta más corta.

Si la ruta no conecta desde el estado actual, la animación se reproducirá después de que el estado se teletransporte.

Si reset_on_teleport es true, la animación se reproduce desde el principio cuando el recorrido causa una teletransportación.