AnimationNodeBlendSpace2D
Успадковує: AnimationRootNode < AnimationNode < Resource < RefCounted < Object
Набір AnimationRootNode, розміщений у 2D-координатах, перехресне затухання між трьома сусідніми. Використовується AnimationTree.
Опис
Ресурс, який використовується AnimationNodeBlendTree.
AnimationNodeBlendSpace2D представляє віртуальний 2D-простір, у якому розміщено AnimationRootNode. Виводить лінійне поєднання трьох суміжних анімацій за допомогою ваги Vector2. Суміжний у цьому контексті означає три AnimationRootNode, що утворюють трикутник, який містить поточне значення.
Ви можете додати вершини до простору змішування за допомогою add_blend_point() і автоматично триангуляти його, встановивши для auto_triangles значення
true. В іншому випадку використовуйте add_triangle() і remove_triangle(), щоб тріангулювати простір змішування вручну.
Посібники
Властивості
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Методи
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) |
get_blend_point_count() const |
|
get_blend_point_node(point: int) const |
|
get_blend_point_position(point: int) const |
|
get_triangle_count() const |
|
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) |
Сигнали
triangles_updated() 🔗
Випромінюється кожного разу, коли трикутники простору змішування створюються, видаляються або коли одна з їхніх вершин змінює положення.
Переліки
enum BlendMode: 🔗
BlendMode BLEND_MODE_INTERPOLATED = 0
Інтерполяція між анімаціями лінійна.
BlendMode BLEND_MODE_DISCRETE = 1
Простір змішування відтворює анімацію вузла анімації, позиція змішування якої є найближчою. Корисно для покадрової 2D-анімації.
BlendMode BLEND_MODE_DISCRETE_CARRY = 2
Подібно до BLEND_MODE_DISCRETE, але починає нову анімацію з позиції відтворення останньої анімації.
Описи властивостей
Якщо true, простір змішування тріангулюється автоматично. Меш (сітка) оновлюється щоразу, коли ви додаєте або видаляєте точки за допомогою add_blend_point() і remove_blend_point().
Керує інтерполяцією між анімаціями.
Vector2 max_space = Vector2(1, 1) 🔗
Верхня межа осей X та Y простору змішування для розташування точок. Дивіться add_blend_point().
Vector2 min_space = Vector2(-1, -1) 🔗
Нижня межа осей X та Y простору змішування для розташування точок. Дивіться add_blend_point().
Vector2 snap = Vector2(0.1, 0.1) 🔗
Приріст позиції, до якого слід прив'язуватись при переміщенні точки.
Якщо false, кадр змішаної анімації зупиняється, коли значення змішування дорівнює 0.
Якщо true, примушує змішані анімації відтворюватися вперед на один кадр.
Назва осі X простору змішування.
Назва осі Y простору змішування.
Описи методів
void add_blend_point(node: AnimationRootNode, pos: Vector2, at_index: int = -1) 🔗
Додає нову точку, яка представляє вузол node у позиції, заданій параметром pos. Ви можете вставити її за певним індексом за допомогою аргументу at_index. Якщо ви використовуєте значення за замовчуванням для at_index, точка буде вставлена в кінець масиву точок накладання.
void add_triangle(x: int, y: int, z: int, at_index: int = -1) 🔗
Створює новий трикутник за трьома точками x, y, і z. Трикутники можуть накладатися один на одного. Ви можете вставити трикутник за певним індексом за допомогою аргументу at_index. Якщо ви використовуєте значення за замовчуванням для at_index, точка буде вставлена в кінець масиву точок змішування.
int get_blend_point_count() const 🔗
Повертає кількість точок у просторі змішування.
AnimationRootNode get_blend_point_node(point: int) const 🔗
Повертає AnimationRootNode, на який посилається точка з індексом point.
Vector2 get_blend_point_position(point: int) const 🔗
Повертає позицію точки за індексом point.
int get_triangle_count() const 🔗
Повертає кількість трикутників в просторі змішування.
int get_triangle_point(triangle: int, point: int) 🔗
Повертає позицію точки з індексом point у трикутнику з індексом triangle.
void remove_blend_point(point: int) 🔗
Видаляє точку з індексом point з простору змішування.
void remove_triangle(triangle: int) 🔗
Видаляє трикутник з індексом triangle з простору змішування.
void set_blend_point_node(point: int, node: AnimationRootNode) 🔗
Змінює AnimationNode, на який посилається точка з індексом point.
void set_blend_point_position(point: int, pos: Vector2) 🔗
Оновлює позицію точки за індексом point у просторі змішування.