Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Обзор системы анимации

В Unity есть богатая и сложная система анимации (иногда называемая «Mecanim»). Он обеспечивает:

  • Простой рабочий процесс и настройка анимации для всех элементов Unity, включая объекты, символы и свойства.
  • Поддержка импортированных анимационных клипов и анимации, созданной в Unity
  • Гуманоидная анимацияАнимация с использованием гуманоидных скелетов. Гуманоидные модели, как правило, имеют одинаковую базовую структуру, представляющую основные суставные части тела, головы и конечностей. Это упрощает сопоставление анимации одного гуманоидного скелета с другим, позволяя перенацеливать и использовать инверсную кинематику. Подробнее
    См. в Словарь
    перенацеливаниеПрименение анимации, созданной для одной модели, к другой. Подробнее
    См. в Словарь
    — возможность наложения анимации с одной модели персонажа на другую.
  • Упрощенный рабочий процесс для выравнивания анимационных клипов.
  • Удобный предварительный просмотр анимационных клипов, переходов и взаимодействий между ними. Это позволяет аниматорам работать более независимо от программистов, создавать прототипы и просматривать свои анимации до того, как код игрового процесса будет подключен.
  • Управление сложными взаимодействиями между анимациями с помощью инструмента визуального программирования.
  • Анимация разных частей тела с разной логикой.
  • Функции наслоения и маскирования
Типичный вид конечного автомата анимации в окне Animator
Типичный вид конечного автомата анимации в окне Animator

Рабочий процесс анимации

Система анимации Unity основана на концепции анимационных клипованимационных данных, которые может использоваться для анимированных персонажей или простых анимаций. Это простое «единичное» движение, такое как (один конкретный пример) «Простояние», «Ходьба» или «Бег». Подробнее
См. в Словарь
, где содержится информация о том, как определенные объекты должны менять свое положение, вращение или другие свойства с течением времени. Каждый клип можно рассматривать как одну линейную запись. Анимационные клипы из внешних источников создаются художниками или аниматорами с помощью сторонних инструментов, таких как Autodesk® 3ds Max® или Autodesk® Maya®, или поступают из студий захвата движения или из других источников.

Анимационные клипы затем организуются в структурированную систему, похожую на блок-схему, которая называется Контроллер анимацииУправляет анимацией через слои анимации с помощью конечных автоматов анимации и деревьев смешивания анимации, управляемых параметрами анимации. На один и тот же контроллер Animator могут ссылаться несколько моделей с компонентами Animator. Подробнее
См. в Словарь
. Контроллер Animator действует как «Конечный автоматНабор состояний в контроллере Animator, в которых анимируется персонаж или GameObject может находиться вместе с набором переходов между этими состояниями и переменной для запоминания текущего состояния. Доступные состояния будут зависеть от типа игрового процесса, но типичные состояния включают в себя такие вещи, как бездействие, ходьба, бег и прыжки. Подробнее
See in Словарь
», который отслеживает, какой клип должен воспроизводиться в данный момент, и когда анимации должны меняться или сливаться вместе.

Очень простой Animator Controller может содержать только один или два клипа, например, для управления вращением и подпрыгиванием бонуса или для анимации открывания и закрывания двери в нужное время. Более продвинутый Animator Controller может содержать десятки гуманоидных анимаций для всех действий главного героя и может смешиваться между несколькими клипами одновременно, чтобы обеспечить плавное движение, когда игрок перемещается по СценаСцена содержит окружение и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
См. в Словарь
.

Система анимации Unity также имеет множество специальных функций для обработки гуманоидных персонажей, которые дают вам возможность перенацелить гуманоидную анимацию из любого источника (например, захват движения ; Asset Store или какую-либо другую стороннюю библиотеку анимации) для вашей собственной модели персонажа, а также настройку определений мышцЭто позволяет более интуитивно управлять скелетом персонажа. Когда Аватар на месте, система анимации работает в пространстве мышц, которое более интуитивно понятно, чем пространство костей. Подробнее
См. в Словарь
. Эти специальные функции доступны благодаря Avatarинтерфейсу Unity для перенацеливания анимации с одного рига на другой. Подробнее
См. в системе Словарь
, где гуманоидные символы отображаются в общий внутренний формат.

Каждая из этих частей — анимационные клипы, контроллер анимации и аватар — объединены в GameObject фундаментальный объект в сценах Unity, который может представлять персонажей, реквизит, декорации, камеры, путевые точки и многое другое. Функциональность GameObject определяется прикрепленными к нему компонентами. Подробнее
См. в Словарь
через Компонент анимацииКомпонент модели, который анимирует эту модель с помощью системы анимации. Компонент имеет ссылку на ресурс Animator Controller, который управляет анимацией. Подробнее
См. в Словарь
. Этот компонент имеет ссылку на контроллер аниматора и (при необходимости) аватар для этой модели. Контроллер Animator, в свою очередь, содержит ссылки на используемые им анимационные клипы.

Как различные части системы анимации соединяются вместе
Как различные части системы анимации соединяются вместе

На диаграмме выше показано следующее:

  1. Анимационные клипы импортируются из внешнего источника или создаются в Unity. В данном примере это импортированные гуманоидные анимации захвата движения.
  2. Анимационные клипы размещаются и упорядочиваются в контроллере Animator. Здесь показано представление контроллера Animator в окне Animatorокне, в котором отображается и редактируется контроллер Animator. Подробнее
    См. в Словарь
    . Состояния (которые могут представлять анимацию или вложенные автоматы состояний) отображаются в виде узлов, соединенных линиями. Этот Animator Controller существует как ресурс в окне проектаокне, в котором отображается содержимое вашего Папка Assets (вкладка Project) Подробнее
    См. в Словарь
    .
  3. Сфальсифицированная модель персонажа (в данном случае астронавта «Астрелла») имеет определенную конфигурацию костей, которые сопоставляются с общим форматом Unity Аватар. Это сопоставление сохраняется как ресурс аватара как часть импортированной модели персонажа, а также отображается в окне проекта, как показано на рисунке.
  4. При анимации модели персонажа к ней присоединен компонент Animator. В Инспектореокне Unity, в котором отображается информация о текущем выбранном игровом объекте, активе или настройках проекта, что позволяет вам проверять и редактировать ценности. Дополнительная информация
    В представлении Словарь
    , показанном выше, вы можете увидеть Компонент анимации, которому назначены как Контроллер анимации, так и Аватар. Аниматор использует их вместе для анимации модели. Ссылка на аватар необходима только при анимации гуманоидного персонажа. Для других типов анимации требуется только Animator Controller.

Система анимации Unity включает множество понятий и терминов. Если в какой-то момент вам понадобится узнать, что что-то означает, перейдите к нашему Глоссарию анимации.

Устаревшая система анимации

Хотя Mecanim рекомендуется для использования в большинстве ситуаций, Unity сохранила свою устаревшую систему анимации, существовавшую до Unity 4. Вам может понадобиться использовать ее при работе с более старым содержимым, созданным до Unity 4. Информацию о устаревшей системе анимации см. этот раздел

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3