Unity 6.3
0 онлайн 3 гостей 3 в системе
Вход

Основы государственной машины

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

Машина состояний находится одновременно только в одном состоянии. Она остаётся в нём до тех пор, пока не будут выполнены условия перехода или не завершится определённое действие.

Например, машина состояний, описывающая поведение двери, может включать состояния «открыта», «закрыта» и «заперта». Дверь не может быть одновременно открытой и закрытой. Переход из открытого состояния в закрытое происходит, когда кто-то толкает дверь, чтобы её закрыть. Машина состояний остаётся в закрытом состоянии, пока не будут выполнены условия другого перехода.

Государственные машины в Mecanim

Система анимации Mecanim в Unity использует машину состояний, чтобы упорядочивать и воспроизводить анимации, связанные с персонажем или GameObject. Как и обычная машина состояний, анимационная машина состояний остаётся в текущем состоянии, пока не будут выполнены условия перехода. Такими условиями могут быть завершение анимации, завершение конкретного действия или выполнение набора условий.

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

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

Используйте Animator окно для создания машин состояний для персонажа или GameObject.

Окно Animator с машиной state.
Окно Animator с машиной состояний.

Машина состояний анимации состоит из Государства-члены, Переходы, и Мероприятия. Используйте вложенную машину состояний, чтобы разбить большое состояние на части. Подробнее см. Animation Состояния-члены и Animation переходы.