Прыжок через State Machine и настройка Sub State Machine UE5: Гайд
Это видео посвящено работе State Machine и её логике. Мы не разбираем передачу переменных и значений в Animation Blueprint — цель показать именно построение переходов и работу со структурами состояний. В этом уроке мы подробно разберём, как правильно организовать прыжок персонажа в Unreal Engine 5 через три состояния. Такой подход позволяет добиться плавных переходов между анимациями и отделить разные фазы прыжка, сохраняя проект чистым и логичным. Логика переходов Jump Start — начальная фаза прыжка. Проигрывается при нажатии клавиши прыжка. В конце анимации стартового толчка мы проверяем её завершение через функцию GetRelevantAnimTime и переходим в следующее состояние. Jump Loop / Fall — нахождение в воздухе. Если игрок сам нажал кнопку прыжка, используется Jump Loop (циклическая анимация). Если персонаж просто сорвался с обрыва или платформы, проигрывается анимация Fall. Jump Land — фаза приземления. Срабатывает при завершении полёта и возвращает персонажа к базовым состояниям передвижения. Sub State Machine Для удобства вся логика передвижения выносится в Sub State Machine (подмашину состояний). Это позволяет: Отделить от остальных состояний. Сохранить чистоту главного графа. Можно так же создать отдельную State Machine для прыжка, но для наглядности я буду все делать на прямую Факты и полезные заметки: GetRelevantAnimTime — это инструмент, который помогает отследить окончание текущей анимации и вовремя переключиться на следующее состояние. Sub State Machine — нужна, чтобы структурировать граф, держать логику чистой и разделять разные части движения персонажа (например, Locomotion отдельно). Смешивание анимаций задаётся прямо в правилах перехода: можно настроить Blend Time, чтобы переход выглядел плавным, а не резким. Тайм-коды: 0:00 — Вступление 0:20 — Что мы делали ранее 0:35 — Подготовка к добавлению прыжка 0:45 — Обрезка анимации в Unreal Engine 1:33 — Создание Sub State Machine 2:16 — Реализация простого прыжка персонажа 3:12 — Доступ к переменным в Animation Blueprint 3:27 — Изменение переменных из персонажа 4:29 — Получение ссылки на персонажа 4:58 — Проверка состояния полёта (IsFalling через Character Movement Component) 5:44 — Состояние Jump Start 6:22 — Функция GetVelocity (вертикальная скорость) 7:15 — Состояние Fall 7:40 — Настройка перехода через GetRelevantAnimTime 7:59 — Состояние Jump Land (StopJumping) 8:41 — Дополнительная настройка перехода через GetRelevantAnimTime 9:13 — Переход в состояние падения без прыжка 9:51 — Плавность переходов (Smoothing) 10:11 — Заключение Теги: #unrealengine5 #ue5 #unrealengine #animation #animationblueprint #statemachine #substatemachine #ue5animation #ue5jump #unrealengineanimation #unrealenginetutorial #ue5tutorial #getrelevantanimtime #ue5locomotion #ue5character #characteranimation #ue5gameplay #ue5movement #ue5falling #animationblending #smoothanimation #ue5beginner #unrealengineguide #ue5tips #ue5workflow #ue5movementtutorial #ue5statemachine #unrealenginerussiantutorial #unrealenginestate