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...
AnimatedSprite2D
Успадковує: Node2D < CanvasItem < Node < Object
Вузол спрайту, який містить декілька текстур у вигляді кадрів для відтворення анімації.
Опис
Вузол AnimatedSprite2D подібний до вузла Sprite2D, за винятком того, що він містить декілька текстур в якості кадрів анімації. Анімація створюється за допомогою ресурсу SpriteFrames, який дозволяє імпортувати файли зображень (або папку з цими файлами) для створення кадрів анімації для спрайту. Ресурс SpriteFrames можна налаштувати у редакторі за допомогою нижньої панелі SpriteFrames.
Посібники
Властивості
StringName |
|
|
String |
|
|
|
||
|
||
|
||
|
||
|
||
Vector2 |
|
|
|
||
SpriteFrames |
Методи
get_playing_speed() const |
|
is_playing() const |
|
void |
pause() |
void |
play(name: StringName = &"", custom_speed: float = 1.0, from_end: bool = false) |
void |
play_backwards(name: StringName = &"") |
void |
set_frame_and_progress(frame: int, progress: float) |
void |
stop() |
Сигнали
animation_changed() 🔗
Випромінюється, коли змінюється animation.
animation_finished() 🔗
Видається, коли анімація досягає кінця або початку, якщо вона відтворюється у зворотному напрямку. Після завершення анімації відтворення призупиняється.
Примітка. Цей сигнал не випромінюється, якщо анімація повторюється.
animation_looped() 🔗
Випромінюється, коли анімація повторюється.
frame_changed() 🔗
Випромінюється, коли змінюється frame.
sprite_frames_changed() 🔗
Випромінюється, коли змінюється sprite_frames.
Описи властивостей
StringName animation = &"default" 🔗
void set_animation(value: StringName)
StringName get_animation()
Поточна анімація з ресурсу sprite_frames. Якщо це значення змінюється, лічильник frame та frame_progress обнуляються.
String autoplay = "" 🔗
void set_autoplay(value: String)
String get_autoplay()
Ключ анімації для відтворення при завантаженні сцени.
Якщо true, текстура буде відцентрована.
Примітка. В іграх із естетикою піксельного мистецтва текстури можуть виглядати деформованими, якщо їх центрувати. Це викликано їх розташуванням між пікселями. Щоб запобігти цьому, установіть для цієї властивості значення false або спробуйте ввімкнути ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel і ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel.
Якщо true, текстура віддзеркалюється горизонтально.
Якщо true, текстура віддзеркалюється вертикально.
Індекс відображуваного кадру анімації. Встановлення цієї властивості також скидає frame_progress. Якщо це не бажано, використовуйте set_frame_and_progress().
Значення прогресу між 0.0 і 1.0 до моменту переходу до наступного кадру. Якщо анімація відтворюється у зворотному напрямку, значення переходить від 1.0 до 0.0.
Vector2 offset = Vector2(0, 0) 🔗
void set_offset(value: Vector2)
Vector2 get_offset()
Зміщення малюнка текстури.
Коефіцієнт масштабування швидкості. Наприклад, якщо це значення 1, то анімація відтворюється з нормальною швидкістю. Якщо це 0.5, то вона відтворюється наполовину швидко. Якщо це 2, то анімація відтворюється з подвійною швидкістю.
Якщо встановлено від'ємне значення, анімація відтворюється у зворотному напрямку. Якщо встановлено 0, анімація не буде відтворюватися.
SpriteFrames sprite_frames 🔗
void set_sprite_frames(value: SpriteFrames)
SpriteFrames get_sprite_frames()
Ресурс SpriteFrames, що містить анімацію(ї). Дозволяє завантажувати, редагувати, очищати, робити унікальними та зберігати стани ресурсу SpriteFrames.
Описи методів
float get_playing_speed() const 🔗
Повертає фактичну швидкість відтворення поточної анімації або 0, якщо вона не відтворюється. Ця швидкість - це властивість speed_scale, помножена на аргумент custom_speed, вказаний при виклику методу play().
Повертає від'ємне значення, якщо поточна анімація відтворюється у зворотному напрямку.
Повертає true, якщо анімація зараз відтворюється (навіть якщо speed_scale та/або custom_speed рівні 0).
void pause() 🔗
Ставить на паузу анімацію, що відтворюється у даний момент. Кадри frame і frame_progress будуть збережені, а виклик play(), або play_backwards(), без аргументів, відновить анімацію з поточної позиції відтворення.
Дивіться також stop().
void play(name: StringName = &"", custom_speed: float = 1.0, from_end: bool = false) 🔗
Відтворює анімацію з ключем name. Якщо custom_speed від'ємний, а from_end має значення true, анімація буде відтворюватися у зворотному напрямку (що еквівалентно виклику play_backwards()).
Якщо цей метод викликати з тією самою анімацією name або без параметра name, призначена анімація відновить відтворення, якщо її було призупинено.
void play_backwards(name: StringName = &"") 🔗
Відтворює анімацію з ключем name у зворотному напрямку.
Цей метод є скороченням від play() з custom_speed = -1.0 і from_end = true, тому дивіться його опис для додаткової інформації.
void set_frame_and_progress(frame: int, progress: float) 🔗
Встановлює для frame та frame_progress задані значення. На відміну від встановлення frame, цей метод не скидає frame_progress до 0.0 неявно.
Приклад: Змініть анімацію, зберігаючи ті самі frame та frame_progress:
var current_frame = animated_sprite.get_frame()
var current_progress = animated_sprite.get_frame_progress()
animated_sprite.play("walk_another_skin")
animated_sprite.set_frame_and_progress(current_frame, current_progress)
void stop() 🔗
Зупиняє відтворення поточної анімації. Позицію анімації буде скинуто до 0, а custom_speed до 1.0. Дивіться також pause().