AnimGraph в Unreal: шпаргалка по ключевым нодам ABP
Заметки по ABP (Animation Blueprint) , именно по AnimGraph
Нода State Machine
В ней мы настраиваем граф стейт-машины (наши анимации + правила переходов),
и на выход она отдаёт итоговую анимацию (обычно локомоция: idle/walk/run/jump и т.д.).
Нода State - по сути контейнер в котором содержится наша анимация
( хотя конечно внутри она может содержать не только анимацию , но и логику)
Нода Cached Pos
Save Cached Pose сохраняет (кэширует) результат Ноды State Machine ( у нас может быть несколько таких нод )
Use Cached Pose — повторно использует эту ноду в других местах графа, и можно удобно использовать в другом графе
На скриншоте видно как эпики применяют этот Cached в другом графе
Это позволяет не захломлять нашу стейт машину
State Alias
Он позволяет:
- иметь несколько входов/переходов в один и тот же state ( анимацию) ,
- и при этом не дублировать правила переходов: настраиваем логику один раз, а Alias просто ведёт в выбранный state ( анимацию) .
- Вообщем и целом что бы не делать вермишель из Transition - сильно спасает
Разберем как это работает у эпиков
To Failling это ярлык - ведущий к анимация jump и Fall loop - галочками отмечено из каких стейтов можно в них перейти
Transition
Настраиваем условия перехода и сколько времени он будет занимать
Условия задаются - если два раза кликнуть по стрелочки
Если у нас нет специальных условий перехода - то ставим галочку Automatic rule Base on Sequence Player in State
это галка, которая делает условие перехода автоматическим.
как работает:
- UE смотрит на Sequence Player (анимацию) внутри исходного state.
- Когда эта анимация доиграла до конца (по времени ), переход становится true и срабатывает, без ручного условия.
Slot Default Slot
Отвечает за возможность проигрывание монтажей - если у вас этого не будет в ABP монтажи не будут проигрыватся
Control Rig
это система процедурного рига прямо в движке. Чаще всего используют для IK ног/рук, aim/поворота корпуса, контактов с поверхностью - вообщем штука крутая
Сама нода
прогоняет текущую анимацию через Control Rig и навешивает сверху тот функционал что мы настроим в Control Rig - можно сделать процедурные look at , ik на ноги и кучу всего еще ( кстати эти вещи можно делать и без Control Rig ) вот кстати статья про look at и Control Rig
Теперь
Немного о нодах которые могут быть полезны
Layered Blend per Bone
смешивает две (и больше) анимаций по костям .
- Base Pose — основа (например локомоция).
- Blend Poses — позы, которые подмешиваются/заменяют основу только на выбранных костях (через Branch Filter или Blend Mask)..
Типичный пример: ноги остаются из бега, а верх тела берётся из монтажа (атака/оружие).
Видео пример + скриншоты
Spring Controller :
добавляет “пружинящую” инерцию к кости: кость чуть отстаёт и догоняет основное движение, создавая вторичные движения- можно использовать для (хвоста, груди, аксессуаров). обычно очень дешевая по производительности
Более подробно тут ;
https://dtf.ru/gamedev/4762034-simulyatsiya-grudi-v-unreal-engine
На сегодня все
Мой тг канал про анимацию тут