Анимация: выбрать инструмент
Клипы, дорожки, состояния и смешивание: что решает каждую задачу.
Выберите задачу
| Нужно | Инструмент и руководство |
|---|---|
| Изменить свойство во времени, запустить или приостановить клип | AnimationPlayer |
| Вызвать метод в момент удара, анимировать трансформацию или переключить видимость | Дорожки и события |
| Плавно менять позу, переключать состояния, наложить разовое действие | AnimationTree |
| Собрать персонажа из отдельных 2D-частей | Составная 2D-анимация |
| Деформировать 2D-полигон костями | Скелет 2D |
| Проиграть видеофайл | Видео |
| Записать последовательность кадров проекта | Создание видео |
Из чего состоит анимация
Animation хранит длину, дорожки и ключи. AnimationLibrary объединяет клипы по именам. AnimationPlayer воспроизводит их и меняет свойства целей. AnimationTree использует те же библиотеки для графа смешивания и состояний.
В дереве игры AnimationPlayer и AnimationTree — Entity. Ресурсы с именами AnimationNode... — элементы графа анимации, не игровые Entity и не компоненты ECS. Они описывают обработку поз; параметры каждого экземпляра задаются через его AnimationTree.
У одного свойства должен быть согласованный владелец записи. Если скрипт каждый кадр меняет Position, а анимация пишет ту же position, результат зависит от порядка обновления. Для физического персонажа оставьте тело под контролем физики, анимируйте дочернюю визуальную часть. Для движения из клипа используйте root motion и явно передавайте его в физику.
Проверка результата
Начните с одного клипа и одного видимого свойства. Проверьте имя библиотеки, путь цели и ключи, затем добавляйте смешивание. В руководствах ниже приведены полные C#-классы; кубы и ресурсы создаются кодом, дополнительные модели и картинки не нужны.