Unity 6.3
0 онлайн 97 гостей 3 в системе
Вход
Animation Шаг 52 из 74

Субгосударственные машины

Обычно у персонажа есть сложные действия, состоящие из нескольких этапов. Вместо того чтобы описывать всё действие одним состоянием, разумно выделить отдельные этапы и отвести каждому своё состояние. Например, у персонажа может быть действие «трюковой выстрел»: он приседает, чтобы прицелиться, стреляет и затем снова встаёт.

Последовательность состояний в действии Trickshot
Последовательность состояний в действии «Трикшота»

Хотя это удобно с точки зрения управления, есть и недостаток: по мере добавления таких сложных действий машина состояний становится большой и громоздкой. Ситуацию можно немного упростить, просто разделив группы состояний в редакторе пустым пространством. Однако Mecanim идёт дальше и позволяет свернуть группу состояний в один именованный элемент на диаграмме машины состояний. Такие свёрнутые группы состояний называются Подмашины состояний.

Вы можете создать суб-state машину, щелкнув правой кнопкой мыши на пустом месте в Animator Контроллере окно и выбрав Создать Машину Подсостояния из контекстного меню. Суб-state машина представлена в редакторе удлинённым шестигранником, чтобы отличить ее от обычных состояний.

Машина подstate
Машина подstate

При двойном щелчке по шестиугольнику редактор перестраивается, и вы можете править вложенную машину состояний так, будто это совершенно отдельная машина состояний. На панели в верхней части окна отображается «хлебная дорожка», показывающая, какая вложенная машина состояний редактируется сейчас (учтите, что вложенные машины состояний можно создавать и внутри других вложенных машин, и так далее). Щелчок по элементу дорожки переводит фокус редактора на соответствующую вложенную машину состояний.

Тропа крошки
«Тропа крошки»

Внешние переходы

Как отмечалось выше, вложенная машина состояний — это лишь способ визуально свернуть группу состояний в редакторе, поэтому при переходе во вложенную машину нужно выбрать, к какому именно её состоянию подключиться.

Выбор цели state в пределах машины Trickshot sub-state
Выбор целевого состояния внутри подмашины состояний Trickshot

Вы заметите в подмашине состояний дополнительное состояние, имя которого начинается с Вверх.

Вверх state
Состояние «Вверх»

Машина Вверх состояние представляет «внешний мир» — машину состояний, которая окружает вложенную машину состояний в этом представлении. Если добавить переход от машины состояний внутри вложенной машины к машине Вверх состояние, вам будет предложено выбрать одно из состояний окружающей машины, к которому нужно подключиться.

Подключение к state в упаковочной машине
Подключение к состоянию в подмашине состояний