AnimationNodeBlendSpace2D

Inherits: AnimationRootNode < AnimationNode < Resource < Reference < Object

Se mezcla linealmente entre tres AnimationNode de cualquier tipo colocados en un espacio 2D.

Descripción

Un recurso para añadir a un AnimationNodeBlendTree.

Este nodo te permite mezclar linealmente entre tres animaciones usando un peso Vector2.

Puedes añadir vértices al espacio de mezcla con add_blend_point y triangularlo automáticamente estableciendo auto_triangles a true. De lo contrario, usa add_triangle y remove_triangle para crear el espacio de mezcla a mano.

Propiedades

bool

auto_triangles

true

BlendMode

blend_mode

0

Vector2

max_space

Vector2( 1, 1 )

Vector2

min_space

Vector2( -1, -1 )

Vector2

snap

Vector2( 0.1, 0.1 )

String

x_label

"x"

String

y_label

"y"

Métodos

void

add_blend_point ( AnimationRootNode node, Vector2 pos, int at_index=-1 )

void

add_triangle ( int x, int y, int z, int at_index=-1 )

int

get_blend_point_count ( ) const

AnimationRootNode

get_blend_point_node ( int point ) const

Vector2

get_blend_point_position ( int point ) const

int

get_triangle_count ( ) const

int

get_triangle_point ( int triangle, int point )

void

remove_blend_point ( int point )

void

remove_triangle ( int triangle )

void

set_blend_point_node ( int point, AnimationRootNode node )

void

set_blend_point_position ( int point, Vector2 pos )

Señales

  • triangles_updated ( )

Emitida cada vez que los triángulos del espacio de mezcla se crean, se eliminan, o cuando uno de sus vértices cambia de posición.

Enumeraciones

enum BlendMode:

  • BLEND_MODE_INTERPOLATED = 0 --- La interpolación entre las animaciones es lineal.

  • BLEND_MODE_DISCRETE = 1 --- El espacio de mezcla reproduce la animación del nodo más cercano a la posición de mezcla. Es útil para las animaciones 2D fotograma a fotograma.

  • BLEND_MODE_DISCRETE_CARRY = 2 --- Similar a BLEND_MODE_DISCRETE, pero inicia la nueva animación en la posición de reproducción de la última animación.

Descripciones de Propiedades

  • bool auto_triangles

Default

true

Setter

set_auto_triangles(value)

Getter

get_auto_triangles()

Si true, el espacio de mezcla se triangula automáticamente. La malla se actualiza cada vez que añades o eliminas puntos con add_blend_point y remove_blend_point.


Default

0

Setter

set_blend_mode(value)

Getter

get_blend_mode()

Controla la interpolación entre las animaciones. Ver las constantes de BlendMode.


Default

Vector2( 1, 1 )

Setter

set_max_space(value)

Getter

get_max_space()

El límite superior de los ejes X e Y del espacio de mezcla para la posición de los puntos. Ver add_blend_point.


Default

Vector2( -1, -1 )

Setter

set_min_space(value)

Getter

get_min_space()

El límite inferior de los ejes X e Y del espacio de mezcla para la posición de los puntos. Ver add_blend_point.


Default

Vector2( 0.1, 0.1 )

Setter

set_snap(value)

Getter

get_snap()

Incremento de la posición a la que se ajusta cuando se mueve un punto.


Default

"x"

Setter

set_x_label(value)

Getter

get_x_label()

Nombre del eje X del espacio de la mezcla.


Default

"y"

Setter

set_y_label(value)

Getter

get_y_label()

El nombre del eje Y del espacio de mezcla.

Descripciones de Métodos

Añade un nuevo punto que representa un nodo pos en la posición establecida por pos. Se puede insertar en un índice específico usando el argumento at_index. Si utilizas el valor por defecto de at_index, el punto se inserta al final del array de puntos de mezcla.


  • void add_triangle ( int x, int y, int z, int at_index=-1 )

Crea un nuevo triángulo usando tres puntos x, y, y z. Los triángulos pueden superponerse. Puedes insertar el triángulo en un índice específico usando el argumento at_index. Si utilizas el valor por defecto de at_index, el punto se inserta al final del array de puntos de mezcla.


  • int get_blend_point_count ( ) const

Devuelve el número de puntos en el espacio de mezcla.


Devuelve el AnimationRootNode referenciado por el punto en el índice point.


  • Vector2 get_blend_point_position ( int point ) const

Devuelve la posición del punto en el índice point.


  • int get_triangle_count ( ) const

Devuelve el número de triángulos en el espacio de mezcla.


  • int get_triangle_point ( int triangle, int point )

Devuelve la posición del punto en el índice point en el triángulo del índice triangle.


  • void remove_blend_point ( int point )

Elimina el punto en el índice point del espacio de mezcla.


  • void remove_triangle ( int triangle )

Elimina el triángulo en el índice triangle del espacio de mezcla.


Cambia el AnimationNode al que se refiere el punto en el índice point.


  • void set_blend_point_position ( int point, Vector2 pos )

Actualiza la posición del punto en el índice point en el eje de la mezcla.