Специалист по Houdini и Unreal Engine Мате Петраний экспериментирует с симуляцией толп в Houdini и выстраивает пайплайн переноса скелетной анимации в Unreal Engine 5 через Sequencer.
Пайплайн экспорта толпы из Houdini
Автор создал HDA (Houdini Digital Asset), который:
- извлекает root motion каждого агента толпы и сохраняет его в JSON;
- экспортирует анимации агентов без root motion (чистая скелетная анимация).
Таким образом, трансформации по миру (позиция/ориентация) отделены от анимации скелета и могут управляться уже на стороне Unreal.
Сборка сцены в Unreal Sequencer
В Unreal автор создал Editor Utility Widget, который автоматизирует настройку:
- генерирует Level Sequence;
- создаёт нужное количество Blueprint-актеров для агентов толпы;
- подтягивает анимации и применяет трансформации из JSON к соответствующим актёрам и их трекам в Sequencer.
В результате толпа, просчитанная в Houdini, воспроизводится в Unreal как набор скелетных актёров с анимацией, управляемой Sequencer.
Эксперимент с гонкой и последним выжившим
Далее Петраний поставил эксперимент: гонка, где последний оставшийся участник празднует победу анимацией радости. Основная сложность оказалась в управлении триггерами анимаций и их плавными переходами.
Ключевая задача — запустить прыжок в «оптимальный момент». Для этого разработчик написал множество кастомных триггеров, которые выбирают нужную анимацию в зависимости от того, какая нога агента сейчас впереди.
Проект стал практическим полигоном для изучения:
- обнаружения RBD-столкновений (RBD impact detection);
- системы следования по пути (path following);
- графов переходов агентов (agent transition graphs);
- кастомных триггеров анимации;
- настройки ragdoll-моторов.
Выводы
- Root motion выгодно отделять от скелетной анимации и хранить как данные (JSON) для последующей сборки в движке.
- Editor Utility Widgets в Unreal позволяют автоматизировать создание Level Sequence и расстановку актёров толпы.
- Сложность реалистичных толп — в триггерах и блендах анимаций, а не только в самой симуляции.
- Точная логика (например, выбор анимации по «активной» ноге) критична для правдоподобных переходов.
- Проект даёт практический опыт с RBD, path following, transition graphs и ragdoll в связке Houdini → Unreal.