Animator Контроллер переопределения
С помощью ассета Animator Override Controller можно переопределить клипы анимации в Animator Controller, сохранив структуру, параметры и логику его машины состояний. Так удобно создавать множество вариантов одного и того же Animator Controller.
Например, в вашей игре есть разные персонажи: гоблины, огры и эльфы. Каждый персонаж использует свои клипы анимации для простоя, поворотов и бега, но структура, параметры и логика машины состояний у всех одинаковы. В этом случае можно создать базовый Animator Controller для всех персонажей и по одному Animator Override Controller на каждого персонажа.
Преимущество создания базового Animator Контроллера заключается в том, что вам нужно модифицировать только один Animator Контроллер, чтобы изменить логику игры, структуру или параметры для всех персонажей в вашей игре. Кроме того, если вы хотите добавить в игру нового персонажа, вам нужно только создать дополнительный ассет Animator Override Controller.
Настройка ассета контроллера переопределения Animator
Перед использованием ассета Animator Override Controller необходимо создать и определить ассет Animator Controller. Эти действия начинаются с уже созданного и определенного ассета Animator Controller с именем NPC Animator.
Чтобы расширить Animator Контроллер с помощью Animator Контроллера Переопределения, выполните следующие действия:
Перейдите в Ассеты > Создать > Animation > Animator Контроллер переопределения для создания нового ассета Animator Override Controller в окне Project. Также можно использовать кнопку Создать в окне Project.
-
В окне Project выберите новый ресурс Animator Override Controller для отображения его параметров в окне Inspector.
Контроллер переопределения Animator без назначенного контроллера Animator Переименуйте ассет Animator Override Controller в
Ogre Animator.Используйте Контролер поле, чтобы выбрать ассет Animator Controller, который вы хотите переопределить. Для этого выполните одно из следующих действий:
Выберите и перетащите ресурс Animator Controller из окна Project в поле Controller.
-
Выберите Animator Controller picker (⊙) и выберите
NPC Animator Controllerиз окна, которое отобразится.
Перетащите ассет Animator Controller из окна Project в поле Controller Окно Inspector показывает Animator Override Controller в виде таблицы из двух столбцов. В первом перечислены клипы анимации из исходного Animator Controller, во втором — переопределяющие клипы. По умолчанию каждый переопределяющий клип совпадает с исходным.
-
В полях столбца Override выберите переопределяющий клип анимации для каждого исходного клипа. Например, исходные клипы анимации в
NPC Animatorконтроллеры переопределяются версиями Ogre.
Контроллер переопределения Animator с версиями Ogre оригинальных анимационных клипов В своей машине состояний вы можете задавать время выхода перехода в секундах или в нормализованном времени. При использовании Animator Override Controller убедитесь, что время выхода перехода задано в нормализованном времени.
Когда время указано в секундах, время выхода может быть проигнорировано, если переопределяющий клип короче времени выхода из перехода. Если время выхода нормализовано, клип завершается в соответствии с долей, заданной вашей машиной состояний.
Назначение ассета контроллера переопределения Animator
Чтобы назначить ресурс контроллера переопределения Animator ресурсу GameObject, выполните следующие действия:
В окне Hierarchy выберите GameObject, который будет использовать Контроллер Переопределения Animator.
В окне Inspector найдите компонент контроллера Animator, связанный с выбранным GameObject.
В компоненте Animator Controller выберите
Ogre Animatorв качестве его Animator Controller.
В этом примере ассет Animator Override Controller с именем Ogre Animator использует ту же логику, переходы и смешивания, что и оригинальный Animator Controller с именем NPC Animator, но воспроизводит клипы анимации, указанные в ассете Ogre Animator Override Controller.