AnimationNodeBlendSpace2D

Hereda: AnimationRootNode < AnimationNode < Resource < RefCounted < Object

Un conjunto de AnimationRootNodes colocados en coordenadas 2D, que se funden entre las tres adyacentes. Usado por AnimationTree.

Descripción

A resource used by AnimationNodeBlendTree.

AnimationNodeBlendSpace2D represents a virtual 2D space on which AnimationRootNodes are placed. Outputs the linear blend of the three adjacent animations using a Vector2 weight. Adjacent in this context means the three AnimationRootNodes making up the triangle that contains the current value.

You can add vertices to the blend space with add_blend_point() and automatically triangulate it by setting auto_triangles to true. Otherwise, use add_triangle() and remove_triangle() to triangulate the blend space by hand.

Tutoriales

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)

bool

sync

false

String

x_label

"x"

String

y_label

"y"

Métodos

void

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

void

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

int

get_blend_point_count() const

AnimationRootNode

get_blend_point_node(point: int) const

Vector2

get_blend_point_position(point: int) const

int

get_triangle_count() const

int

get_triangle_point(triangle: int, point: int)

void

remove_blend_point(point: int)

void

remove_triangle(triangle: int)

void

set_blend_point_node(point: int, node: AnimationRootNode)

void

set_blend_point_position(point: int, pos: Vector2)


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: 🔗

BlendMode BLEND_MODE_INTERPOLATED = 0

La interpolación entre las animaciones es lineal.

BlendMode BLEND_MODE_DISCRETE = 1

El espacio de mezcla reproduce la animación del nodo de animación cuya posición de mezcla es la más cercana. Es útil para las animaciones 2D fotograma a fotograma.

BlendMode 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 = true 🔗

  • void set_auto_triangles(value: bool)

  • bool get_auto_triangles()

Si es 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().


BlendMode blend_mode = 0 🔗

Controla la interpolación entre animaciones.


Vector2 max_space = Vector2(1, 1) 🔗

El límite superior de los ejes X e Y del espacio de mezcla para la posición de los puntos. Véase add_blend_point().


Vector2 min_space = Vector2(-1, -1) 🔗

El límite inferior de los ejes X e Y del espacio de mezcla para la posición de los puntos. Véase add_blend_point().


Vector2 snap = Vector2(0.1, 0.1) 🔗

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


bool sync = false 🔗

  • void set_use_sync(value: bool)

  • bool is_using_sync()

Si es false, los fotogramas de las animaciones mezcladas se detienen cuando el valor de la mezcla es 0.

Si es true, fuerza a las animaciones mezcladas a avanzar de fotograma.


String x_label = "x" 🔗

Nombre del eje X del espacio de la mezcla.


String y_label = "y" 🔗

El nombre del eje Y del espacio de mezcla.


Descripciones de Métodos

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

Adds a new point that represents a node at the position set by pos. You can insert it at a specific index using the at_index argument. If you use the default value for at_index, the point is inserted at the end of the blend points array.


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

Creates a new triangle using three points x, y, and z. Triangles can overlap. You can insert the triangle at a specific index using the at_index argument. If you use the default value for at_index, the point is inserted at the end of the blend points array.


int get_blend_point_count() const 🔗

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


AnimationRootNode get_blend_point_node(point: int) const 🔗

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


Vector2 get_blend_point_position(point: int) 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(triangle: int, point: int) 🔗

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


void remove_blend_point(point: int) 🔗

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


void remove_triangle(triangle: int) 🔗

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


void set_blend_point_node(point: int, node: AnimationRootNode) 🔗

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


void set_blend_point_position(point: int, pos: Vector2) 🔗

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