Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Animation
Успадковує: Resource < RefCounted < Object
Зберігає дані, які можна використовувати для анімації будь-чого в механізмі.
Опис
Цей ресурс містить дані, які можна використовувати для анімації будь-чого в механізмі. Анімації поділені на доріжки, і кожна доріжка має бути пов’язана з вузлом. Стан цього вузла можна змінювати з часом, додаючи часові ключі (події) до треку.
# Це створює анімацію, яка змушує вузол «Ворог» рухатися праворуч
# 100 пікселів за 2,0 секунди.
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(індекс_доріжки, 0.0, 0)
animation.track_insert_key(track_index, 2.0, 100)
animation.length = 2,0
// Це створює анімацію, яка змушує вузол «Ворог» рухатися вправо
// 100 пікселів за 2,0 секунди.
var animation = new Animation();
int trackIndex = animation.AddTrack(Animation.TrackType.Value);
animation.TrackSetPath(trackIndex, "Enemy:position:x");
animation.TrackInsertKey(trackIndex, 0.0f, 0);
animation.TrackInsertKey(trackIndex, 2.0f, 100);
animation.Length = 2.0f;
Анімації — це лише контейнери даних, і для відтворення їх потрібно додати до таких вузлів, як AnimationPlayer. Доріжки анімації мають різні типи, кожна з яких має власний набір спеціальних методів. Перевірте TrackType, щоб побачити доступні типи.
Примітка. Для 3D-положення/обертання/масштабу з міркувань продуктивності рекомендується використовувати спеціалізовані типи треків TYPE_POSITION_3D, TYPE_ROTATION_3D і TYPE_SCALE_3D замість TYPE_VALUE.
Посібники
Властивості
|
||
|
||
|
||
|
Методи
void |
add_marker(name: StringName, time: float) |
StringName |
animation_track_get_key_animation(track_idx: int, key_idx: int) const |
animation_track_insert_key(track_idx: int, time: float, animation: StringName) |
|
void |
animation_track_set_key_animation(track_idx: int, key_idx: int, animation: StringName) |
audio_track_get_key_end_offset(track_idx: int, key_idx: int) const |
|
audio_track_get_key_start_offset(track_idx: int, key_idx: int) const |
|
Resource |
audio_track_get_key_stream(track_idx: int, key_idx: int) const |
audio_track_insert_key(track_idx: int, time: float, stream: Resource, start_offset: float = 0, end_offset: float = 0) |
|
audio_track_is_use_blend(track_idx: int) const |
|
void |
audio_track_set_key_end_offset(track_idx: int, key_idx: int, offset: float) |
void |
audio_track_set_key_start_offset(track_idx: int, key_idx: int, offset: float) |
void |
audio_track_set_key_stream(track_idx: int, key_idx: int, stream: Resource) |
void |
audio_track_set_use_blend(track_idx: int, enable: bool) |
Vector2 |
bezier_track_get_key_in_handle(track_idx: int, key_idx: int) const |
Vector2 |
bezier_track_get_key_out_handle(track_idx: int, key_idx: int) const |
bezier_track_get_key_value(track_idx: int, key_idx: int) const |
|
bezier_track_insert_key(track_idx: int, time: float, value: float, in_handle: Vector2 = Vector2(0, 0), out_handle: Vector2 = Vector2(0, 0)) |
|
bezier_track_interpolate(track_idx: int, time: float) const |
|
void |
bezier_track_set_key_in_handle(track_idx: int, key_idx: int, in_handle: Vector2, balanced_value_time_ratio: float = 1.0) |
void |
bezier_track_set_key_out_handle(track_idx: int, key_idx: int, out_handle: Vector2, balanced_value_time_ratio: float = 1.0) |
void |
bezier_track_set_key_value(track_idx: int, key_idx: int, value: float) |
blend_shape_track_insert_key(track_idx: int, time: float, amount: float) |
|
blend_shape_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const |
|
void |
clear() |
void |
compress(page_size: int = 8192, fps: int = 120, split_tolerance: float = 4.0) |
void |
copy_track(track_idx: int, to_animation: Animation) |
find_track(path: NodePath, type: TrackType) const |
|
StringName |
get_marker_at_time(time: float) const |
get_marker_color(name: StringName) const |
|
PackedStringArray |
get_marker_names() const |
get_marker_time(name: StringName) const |
|
StringName |
get_next_marker(time: float) const |
StringName |
get_prev_marker(time: float) const |
get_track_count() const |
|
has_marker(name: StringName) const |
|
StringName |
method_track_get_name(track_idx: int, key_idx: int) const |
method_track_get_params(track_idx: int, key_idx: int) const |
|
void |
optimize(allowed_velocity_err: float = 0.01, allowed_angular_err: float = 0.01, precision: int = 3) |
position_track_insert_key(track_idx: int, time: float, position: Vector3) |
|
Vector3 |
position_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const |
void |
remove_marker(name: StringName) |
void |
remove_track(track_idx: int) |
rotation_track_insert_key(track_idx: int, time: float, rotation: Quaternion) |
|
Quaternion |
rotation_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const |
scale_track_insert_key(track_idx: int, time: float, scale: Vector3) |
|
Vector3 |
scale_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const |
void |
set_marker_color(name: StringName, color: Color) |
track_find_key(track_idx: int, time: float, find_mode: FindMode = 0, limit: bool = false, backward: bool = false) const |
|
track_get_interpolation_loop_wrap(track_idx: int) const |
|
track_get_interpolation_type(track_idx: int) const |
|
track_get_key_count(track_idx: int) const |
|
track_get_key_time(track_idx: int, key_idx: int) const |
|
track_get_key_transition(track_idx: int, key_idx: int) const |
|
Variant |
track_get_key_value(track_idx: int, key_idx: int) const |
NodePath |
track_get_path(track_idx: int) const |
track_get_type(track_idx: int) const |
|
track_insert_key(track_idx: int, time: float, key: Variant, transition: float = 1) |
|
track_is_compressed(track_idx: int) const |
|
track_is_enabled(track_idx: int) const |
|
track_is_imported(track_idx: int) const |
|
void |
track_move_down(track_idx: int) |
void |
track_move_to(track_idx: int, to_idx: int) |
void |
track_move_up(track_idx: int) |
void |
track_remove_key(track_idx: int, key_idx: int) |
void |
track_remove_key_at_time(track_idx: int, time: float) |
void |
track_set_enabled(track_idx: int, enabled: bool) |
void |
track_set_imported(track_idx: int, imported: bool) |
void |
track_set_interpolation_loop_wrap(track_idx: int, interpolation: bool) |
void |
track_set_interpolation_type(track_idx: int, interpolation: InterpolationType) |
void |
track_set_key_time(track_idx: int, key_idx: int, time: float) |
void |
track_set_key_transition(track_idx: int, key_idx: int, transition: float) |
void |
track_set_key_value(track_idx: int, key: int, value: Variant) |
void |
track_set_path(track_idx: int, path: NodePath) |
void |
track_swap(track_idx: int, with_idx: int) |
value_track_get_update_mode(track_idx: int) const |
|
Variant |
value_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const |
void |
value_track_set_update_mode(track_idx: int, mode: UpdateMode) |
Переліки
enum TrackType: 🔗
TrackType TYPE_VALUE = 0
Доріжки значення задають значення у властивостях вузла, але тільки ті, які можна інтерполювати. Для 3D-розташування/обертання/масштабу рекомендується використовувати спеціальні типи доріжок TYPE_POSITION_3D, TYPE_ROTATION_3D і TYPE_SCALE_3D замість TYPE_VALUE з міркувань продуктивності.
TrackType TYPE_POSITION_3D = 1
Доріжка 3D-розташування (значення зберігаються у Vector3ах).
TrackType TYPE_ROTATION_3D = 2
Доріжка 3D-обертання (значення зберігаються у Quaternionах).
TrackType TYPE_SCALE_3D = 3
Доріжка 3D-масштабування (значення зберігаються в Vector3ах).
TrackType TYPE_BLEND_SHAPE = 4
Доріжка форми змішування.
TrackType TYPE_METHOD = 5
Доріжка методу викликає функції із заданими аргументами на кожен ключ.
TrackType TYPE_BEZIER = 6
Доріжки Безьє використовуються для інтерполяції значення за допомогою користувацьких кривих. Їх також можна використовувати для анімування підвластивостей векторів і кольорів (наприклад, значення альфа-параметру Color).
TrackType TYPE_AUDIO = 7
Звукові доріжки використовуються для відтворення аудіопотоку за допомогою будь-якого типу AudioStreamPlayer. Потік можна обрізати та попередньо переглянути в анімації.
TrackType TYPE_ANIMATION = 8
Доріжки анімації відтворюють анімацію в інших вузлах AnimationPlayer.
enum InterpolationType: 🔗
InterpolationType INTERPOLATION_NEAREST = 0
Без інтерполяції (найближче значення).
InterpolationType INTERPOLATION_LINEAR = 1
Лінійна інтерполяція.
InterpolationType INTERPOLATION_CUBIC = 2
Кубічна інтерполяція. Виглядає більш плавно, ніж лінійна інтерполяція, але більш затратна. Використовуйте значення INTERPOLATION_LINEAR для складних 3D-анімацій, імпортованих із зовнішнього програмного забезпечення, навіть якщо це вимагає використання більшої частоти кадрів анімації.
InterpolationType INTERPOLATION_LINEAR_ANGLE = 3
Лінійна інтерполяція з обертанням по найкоротшому шляху.
Примітка: Значення результату завжди нормалізоване і може не збігатися зі значенням ключа.
InterpolationType INTERPOLATION_CUBIC_ANGLE = 4
Кубічна інтерполяція з обертанням по найкоротшому шляху.
Примітка: Значення результату завжди нормалізоване і може не збігатися зі значенням ключа.
enum UpdateMode: 🔗
UpdateMode UPDATE_CONTINUOUS = 0
Оновлення між ключовими кадрами та утриманням значення.
UpdateMode UPDATE_DISCRETE = 1
Оновлення на ключових кадрах.
UpdateMode UPDATE_CAPTURE = 2
Те саме, що UPDATE_CONTINUOUS, але працює як прапорець для захоплення значення поточного об’єкта та виконання інтерполяції в деяких методах. Дивіться також AnimationMixer.capture, AnimationPlayer.playback_auto_capture і AnimationPlayer.play_with_capture().
enum LoopMode: 🔗
LoopMode LOOP_NONE = 0
На обох кінцях анімації відтворення анімації буде зупинено.
LoopMode LOOP_LINEAR = 1
В обох кінцях анімації анімація повторюватиметься без зміни напрямку відтворення.
LoopMode LOOP_PINGPONG = 2
Повторюється відтворення та зворотне відтворення на обох кінцях анімації.
enum LoopedFlag: 🔗
LoopedFlag LOOPED_FLAG_NONE = 0
Ця позначка вказує на те, що анімація виконується без зациклення.
LoopedFlag LOOPED_FLAG_END = 1
Ця позначка вказує на те, що анімація досягла кінця і щойно завершився цикл.
LoopedFlag LOOPED_FLAG_START = 2
Ця позначка вказує на те, що анімація досягла початку анімації і щойно завершився цикл.
enum FindMode: 🔗
FindMode FIND_MODE_NEAREST = 0
Знаходить найближчий часовий ключ.
FindMode FIND_MODE_APPROX = 1
Знаходить тільки ключ з наближеним часом.
FindMode FIND_MODE_EXACT = 2
Знаходить тільки той ключ, який збігається за часом.
Описи властивостей
bool capture_included = false 🔗
bool is_capture_included()
Повертає true, якщо включений контроль захоплення. Це окреме значення для виконання.
Загальна тривалість анімації (у секундах).
Примітка: Довжина не обмежується останнім ключем, оскільки вона може бути до, або після, кінця, щоб забезпечити правильну інтерполяцію та зациклення.
Визначає поведінку обох кінців часової шкали анімації під час відтворення анімації. Це вказує, чи слід перезапускати анімацію і як, а також використовується для правильної інтерполяції циклів анімації.
Значення кроку анімації.
Описи методів
void add_marker(name: StringName, time: float) 🔗
Додає маркер до цієї анімації.
int add_track(type: TrackType, at_position: int = -1) 🔗
Додає доріжку до анімації.
StringName animation_track_get_key_animation(track_idx: int, key_idx: int) const 🔗
Повертає назву анімації за ключем, визначеним key_idx. track_idx має бути індексом Доріжки Анімації.
int animation_track_insert_key(track_idx: int, time: float, animation: StringName) 🔗
Вставляє ключ зі значенням animation на заданий time (у секундах). track_idx має бути індексом Доріжки Анімації.
void animation_track_set_key_animation(track_idx: int, key_idx: int, animation: StringName) 🔗
Встановлює ключ, визначений key_idx, на значення animation. track_idx має бути індексом Доріжки Анімації.
float audio_track_get_key_end_offset(track_idx: int, key_idx: int) const 🔗
Повертає кінцеве зміщення ключа, визначеного key_idx. track_idx має бути індексом Звукової Доріжки.
Кінцеве зміщення - це кількість секунд, що відсікаються в кінці аудіопотоку.
float audio_track_get_key_start_offset(track_idx: int, key_idx: int) const 🔗
Повертає початкове зміщення ключа, визначеного параметром key_idx. track_idx має бути індексом Звукової Доріжки.
Початкове зміщення - це кількість секунд, відрізаних на початку аудіопотоку.
Resource audio_track_get_key_stream(track_idx: int, key_idx: int) const 🔗
Повертає аудіопотік ключа, визначеного параметром key_idx. track_idx має бути індексом Звукової Доріжки.
int audio_track_insert_key(track_idx: int, time: float, stream: Resource, start_offset: float = 0, end_offset: float = 0) 🔗
Вставляє ключ Звукової Доріжки на заданий time у секундах. track_idx має бути індексом Звукової Доріжки.
stream - це ресурс AudioStream для відтворення. start_offset - це кількість секунд, що відсікаються на початку аудіопотоку, а end_offset - наприкінці.
bool audio_track_is_use_blend(track_idx: int) const 🔗
Повертає true, якщо доріжка track_idx буде змішана з іншими анімаціями.
void audio_track_set_key_end_offset(track_idx: int, key_idx: int, offset: float) 🔗
Встановлює кінцеве зміщення ключа, визначеного параметром key_idx, на значення offset. track_idx має бути індексом Звукової Доріжки.
void audio_track_set_key_start_offset(track_idx: int, key_idx: int, offset: float) 🔗
Встановлює початкове зміщення ключа визначеної key_idx, на значення offset. track_idx має бути індексом Звукової Доріжки.
void audio_track_set_key_stream(track_idx: int, key_idx: int, stream: Resource) 🔗
Встановлює потік ключа, визначеного key_idx, на значення stream. track_idx має бути індексом Звукової Доріжки.
void audio_track_set_use_blend(track_idx: int, enable: bool) 🔗
Дозволяє вказати, чи буде доріжку змішано з іншими анімаціями. Якщо true, гучність відтворення звуку змінюється залежно від значення змішування.
Vector2 bezier_track_get_key_in_handle(track_idx: int, key_idx: int) const 🔗
Повертає дескриптор ключа, визначеного key_idx. track_idx має бути індексом Доріжки Безьє.
Vector2 bezier_track_get_key_out_handle(track_idx: int, key_idx: int) const 🔗
Повертає вихідний дескриптор ключа, визначеного key_idx. track_idx має бути індексом Доріжки Безьє.
float bezier_track_get_key_value(track_idx: int, key_idx: int) const 🔗
Повертає значення ключа, визначеного key_idx. track_idx має бути індексом Доріжки Безьє.
int bezier_track_insert_key(track_idx: int, time: float, value: float, in_handle: Vector2 = Vector2(0, 0), out_handle: Vector2 = Vector2(0, 0)) 🔗
Вставляє ключ Доріжки Безьє на заданий time у секундах. track_idx має бути індексом Доріжки Безьє.
in_handle — вплив лівої сторони доданої точки кривої Безьє, out_handle — правої, а value — фактичне значення в цій точці.
float bezier_track_interpolate(track_idx: int, time: float) const 🔗
Повертає інтерпольоване значення на заданий time (у секундах). track_idx має бути індексом Доріжки Безьє.
void bezier_track_set_key_in_handle(track_idx: int, key_idx: int, in_handle: Vector2, balanced_value_time_ratio: float = 1.0) 🔗
Встановлює для дескриптора ключа, визначеного key_idx, значення in_handle. track_idx має бути індексом Доріжки Безьє.
void bezier_track_set_key_out_handle(track_idx: int, key_idx: int, out_handle: Vector2, balanced_value_time_ratio: float = 1.0) 🔗
Встановлює вихідний дескриптор ключа, визначеного key_idx, на значення out_handle. track_idx має бути індексом Доріжки Безьє.
void bezier_track_set_key_value(track_idx: int, key_idx: int, value: float) 🔗
Встановлює значення ключа, визначеного параметром key_idx, на задане значення. track_idx має бути індексом Доріжки Безьє.
int blend_shape_track_insert_key(track_idx: int, time: float, amount: float) 🔗
Вставляє ключ на задану доріжку форми змішування. Повертає індекс ключа.
float blend_shape_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const 🔗
Повертає інтерпольоване значення форми змішування в заданий час (у секундах). track_idx має бути індексом доріжки форми змішування.
void clear() 🔗
Очистить анімацію (очищає всі доріжки і все скидає).
void compress(page_size: int = 8192, fps: int = 120, split_tolerance: float = 4.0) 🔗
Стискає анімацію та всі її доріжки на місці. Це призведе до того, що track_is_compressed() поверне true після виклику на цій Animation. Стиснуті доріжки вимагають менше пам'яті для відтворення і призначені для використання у складних 3D-анімаціях (таких як ролики), імпортованих із зовнішнього 3D-програмного забезпечення. Стиснення призводить до втрат, але в реальних умовах різниця зазвичай не помітна.
Примітка: Стиснуті доріжки мають різні обмеження (наприклад, їх не можна редагувати у редакторі), тому використовуйте стиснуту анімацію лише тоді, коли вона вам справді потрібна.
void copy_track(track_idx: int, to_animation: Animation) 🔗
Додає новий трек до to_animation, який є копією заданого треку з цієї анімації.
int find_track(path: NodePath, type: TrackType) const 🔗
Повертає індекс заданої доріжки. Якщо доріжку не знайдено, повертається -1.
StringName get_marker_at_time(time: float) const 🔗
Повертає назву маркера, розташованого в заданий час.
Color get_marker_color(name: StringName) const 🔗
Повертає заданий колір маркера.
PackedStringArray get_marker_names() const 🔗
Повертає кожен маркер у цій анімації, відсортований за зростанням за часом.
float get_marker_time(name: StringName) const 🔗
Повертає заданий час маркера.
StringName get_next_marker(time: float) const 🔗
Повертає найближчий маркер після заданого часу. Якщо такий маркер не існує, повертається порожній рядок.
StringName get_prev_marker(time: float) const 🔗
Повертає найближчий маркер, який передує вказаному часу. Якщо такий маркер не існує, повертається порожній рядок.
Повертає кількість доріжок в анімації.
bool has_marker(name: StringName) const 🔗
Повертає true, якщо ця анімація містить маркер із вказаною назвою.
StringName method_track_get_name(track_idx: int, key_idx: int) const 🔗
Повертає назву методу доріжки методу.
Array method_track_get_params(track_idx: int, key_idx: int) const 🔗
Повертає значення аргументів, які потрібно викликати на доріжці методів для заданого ключа на даній доріжці.
void optimize(allowed_velocity_err: float = 0.01, allowed_angular_err: float = 0.01, precision: int = 3) 🔗
Оптимізуйте анімацію та всі її доріжки на місці. Це збереже лише стільки ключів, скільки необхідно для збереження анімації у вказаних межах.
int position_track_insert_key(track_idx: int, time: float, position: Vector3) 🔗
Вставляє ключ у задану доріжку 3D-розташування. Повертає індекс ключа.
Vector3 position_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const 🔗
Повертає інтерпольоване значення позиції в заданий час (у секундах). track_idx має бути індексом 3D-треку позиції.
void remove_marker(name: StringName) 🔗
Видаляє маркер із вказаною назвою з цієї анімації.
void remove_track(track_idx: int) 🔗
Видаляє доріжку, вказавши її індекс.
int rotation_track_insert_key(track_idx: int, time: float, rotation: Quaternion) 🔗
Вставляє ключ у задану доріжку 3D-обертання. Повертає індекс ключа.
Quaternion rotation_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const 🔗
Повертає інтерпольоване значення обертання в заданий час (у секундах). track_idx має бути індексом 3D-доріжки обертання.
int scale_track_insert_key(track_idx: int, time: float, scale: Vector3) 🔗
Вставляє ключ у задану доріжку 3D-масштабування. Повертає індекс ключа.
Vector3 scale_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const 🔗
Повертає інтерпольоване значення масштабу в заданий час (у секундах). Параметр track_idx має бути індексом доріжки 3D-масштабування.
void set_marker_color(name: StringName, color: Color) 🔗
Встановлює заданий колір маркера.
int track_find_key(track_idx: int, time: float, find_mode: FindMode = 0, limit: bool = false, backward: bool = false) const 🔗
Знаходить індекс ключа за часом у даній доріжці. За бажанням знайдіть його, лише якщо вказано приблизний/точний час.
Якщо
limitмає значенняtrue, ключі за межами діапазону анімації не повертаються.Якщо
backwardмає значенняtrue, напрямок змінюється на протилежний у методах, які покладаються на односпрямовану обробку.Наприклад, якщо
find_modeдорівнює FIND_MODE_NEAREST, якщо в поточній позиції відразу після пошуку немає ключа, перший знайдений ключ витягується шляхом пошуку перед позицією, але якщоbackwardдорівнює `` true``, перший знайдений ключ витягується після позиції.
bool track_get_interpolation_loop_wrap(track_idx: int) const 🔗
Повертає true, якщо доріжка в track_idx обертає цикл інтерполяції. Нові доріжки обертають цикл інтерполяції за замовчуванням.
InterpolationType track_get_interpolation_type(track_idx: int) const 🔗
Повертає тип інтерполяції заданої доріжки.
int track_get_key_count(track_idx: int) const 🔗
Повертає кількість ключів на заданій доріжці.
float track_get_key_time(track_idx: int, key_idx: int) const 🔗
Повертає час, на якому розміщений ключ.
float track_get_key_transition(track_idx: int, key_idx: int) const 🔗
Повертає криву переходу (послаблення) для певного ключа (дивіться вбудовану математичну функцію @GlobalScope.ease()).
Variant track_get_key_value(track_idx: int, key_idx: int) const 🔗
Повертає значення заданого ключа на заданій доріжці.
NodePath track_get_path(track_idx: int) const 🔗
Отримує шлях до доріжки. Докладнішу інформацію про формат шляху можна знайти у track_set_path().
TrackType track_get_type(track_idx: int) const 🔗
Отримує тип доріжки.
int track_insert_key(track_idx: int, time: float, key: Variant, transition: float = 1) 🔗
Вставляє загальний ключ у задану доріжку. Повертає індекс ключа.
bool track_is_compressed(track_idx: int) const 🔗
Повертає true, якщо доріжку стиснуто, інакше false. Дивіться також compress().
bool track_is_enabled(track_idx: int) const 🔗
Повертає true, якщо доріжка за індексом track_idx увімкнена.
bool track_is_imported(track_idx: int) const 🔗
Повертає true, якщо задану доріжку імпортовано. Інакше повертає false.
void track_move_down(track_idx: int) 🔗
Переміщує доріжку вниз.
void track_move_to(track_idx: int, to_idx: int) 🔗
Змінює індексну позицію доріжки track_idx на позицію, визначену у to_idx.
void track_move_up(track_idx: int) 🔗
Переміщує доріжку вгору.
void track_remove_key(track_idx: int, key_idx: int) 🔗
Видаляє ключ за індексом на заданій доріжці.
void track_remove_key_at_time(track_idx: int, time: float) 🔗
Видаляє ключ на time у заданій доріжці.
void track_set_enabled(track_idx: int, enabled: bool) 🔗
Вмикає/вимикає задану доріжку. За замовчуванням доріжки увімкнені.
void track_set_imported(track_idx: int, imported: bool) 🔗
Визначає імпортовану доріжку як імпортовану чи ні.
void track_set_interpolation_loop_wrap(track_idx: int, interpolation: bool) 🔗
Якщо true, доріжка в track_idx обертає цикл інтерполяції.
void track_set_interpolation_type(track_idx: int, interpolation: InterpolationType) 🔗
Задає тип інтерполяції для даної доріжки.
void track_set_key_time(track_idx: int, key_idx: int, time: float) 🔗
Встановлює час існуючого ключа.
void track_set_key_transition(track_idx: int, key_idx: int, transition: float) 🔗
Встановлює криву переходу (послаблення) для певного ключа (див. вбудовану математичну функцію @GlobalScope.ease()).
void track_set_key_value(track_idx: int, key: int, value: Variant) 🔗
Встановлює значення існуючого ключа.
void track_set_path(track_idx: int, path: NodePath) 🔗
Встановлює шлях доріжки. Шляхи мають бути дійсними шляхами дерева сцен до вузла та мають бути вказані, починаючи з AnimationMixer.root_node, який відтворюватиме анімацію. Треки, які керують властивостями або кістками, мають додавати свою назву після шляху, розділеного ":".
Наприклад,
"character/skeleton:ankle"або"character/mesh:transform/local".
void track_swap(track_idx: int, with_idx: int) 🔗
Міняє місцями індексну позицію доріжки track_idx та доріжки with_idx.
UpdateMode value_track_get_update_mode(track_idx: int) const 🔗
Повертає режим оновлення значень доріжки.
Variant value_track_interpolate(track_idx: int, time_sec: float, backward: bool = false) const 🔗
Повертає інтерпольоване значення в заданий час (у секундах). track_idx має бути індексом доріжки значення.
backward головним чином впливає на напрямок пошуку ключа треку з UPDATE_DISCRETE, перетвореною AnimationMixer.ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS, щоб відповідати результату track_find_key().
void value_track_set_update_mode(track_idx: int, mode: UpdateMode) 🔗
Встановлює режим оновлення відстеження вартості.