-
Notifications
You must be signed in to change notification settings - Fork 9
exporting data from aseprite (ru)
Aseprite - замечательное приложение для работы с pixel-art графикой и анимацией. У него много удобных инструментов для рисования, возможность изменения палитр и таблица слоев и кадров. На линии кадров можно выделять диапазоны с помощью тегов, в которых можно указать направление и количество повторений анимации. Для каждого кадра можно индивидуально задать длительность. Слои могут быть 4 типов: обычный растровый слой, референсный слой, слой тайловой карты и группа слоёв.
У него есть более простой, но свободный аналог - LibreSprite. Он был основан группой независимых разработчиков с тех пор, как Aseprite сменил лицензию и перестал быть свободным ПО, хоть и остался в статусе ПО с отркытым исходным кодом. LibreSprite был ответвлён от последнего коммита Aseprite, выпущенного под лицензией свободного ПО.
У LibreSprite гораздо меньше возможностей, но он может заменить Aseprite для Importality. Но с некоторыми ограничениями. Например:
- Он не распознает направление анимации "ping-pong reversed". Вместо него он сделает "forward".
- Он не распознает количество повторений анимации. Вместо этого все анимации будут бесконечными.
- Он может не распознать много новых функций, которые появились с тех пор в Aseprite, например, тайловые карты. Так же у него могут возникнуть проблемы с группами слоёв, так как он поддерживает только отдельные слои.
Направление анимации и количество повторов можно жёстко задать с помощью суффиксов в именах тэгов:
<animation_name> [-d:<direction>] [-r:<repeat_count>]
Где:
-
direction
- направление анимации. Возможные значения:-
f
(forward) - вперёд (по умолчанию) -
r
(reverse) - обратно -
pp
(ping-pong) - вперёд, а затем обратно -
ppr
(ping-pong reverse) - сначала обратно, а затем вперёд
-
-
repeat_count
- количество повторений анимации (по умолчанию 1). Если указано 0, анимация будет зациклена бесконечно
Например:
Idle -r:0
Walk -r:0
Jump -r:1
Crouch -r:1
Hurt -r:1
Die -r:1
Special -d:pp -r:0
Aseprite позволяет гибко настроить экспорт в разные форматы, указывать, какие слои и тэги будут участвовать в экспорте, и самое главное - создавать атласы анимаций, так называемые sprite sheets. А так же у него есть богатый API для сценариев на Lua и CLI (интерфейс командной строки).
Чтобы не приходилось постоянно вызывать экспорт из Aseprite/LibreSprite вручную и потом настраивать импорт его результатов в проект Godot, можно настроить импорт *.aseprite
-файлов с помощью Importality. Для этого в настройках проекта в секции "Importality" укажите директорию временных файлов и укажите путь к исполняемому файлу Aseprite (или LibreSprite). Затем выберите *.aseprite
-файл в дереве файловой системы Godot, на вкладке "Import" выберите нужный формат импорта, настройте его параметры и нажмите кнопку "Reimport". При изменении формата импорта движок потребует перезагрузку.
Если вы импортируете *.aseprite
-файл как изображение, будет импортирован лишь первый его кадр. Если как набор анимаций - то будет создано по одной одноимённой анимации на каждый тег на таблице кадров. Плагин распознает направление анимации и количество её повторов.
Если при импорте произошли какие-то ошибки, внимательно прочитайте сообщения в консоли "Output" (вывод) и проверьте, правильно ли заполнены настройки путей и параметры импорта. Так же может помочь удаление *.import
-файла рядом с файлом *.aseprite
и одноимённых файлов из скрытой папки .godot/imported
. Если эти действия не помогли, заведите тикет о своей проблеме в этом репозитории, и опишите в нём свою проблему. Укажите в нём вашу операционную систему, версию Aseprite/LibreSprite, способ его дистрибуции и версию движка Godot. Приложите к нему скриншоты и другие материалы, которые помогут воспроизвести и исправить вашу проблему. Вы очень поможете этим развитию проекта!
Контент подвала