3D-художник выпустил инструмент для создания невероятно реалистичной грязи в Unreal Engine 5 без потери частоты кадров
3D-художник Андраш Кетцер выпустил FluidNinja LIVE-2 – новую версию своего инструмента для симуляции жидкостей в реальном времени для Unreal Engine 5. Разработка заняла три года, и в свежем ролике Кетцер показал вязкие жидкости, на примере грязи и крови.
На видео густая масса ведёт себя почти как настоящая грязь: растекается, тянется за объектами и медленно заполняет следы. Полная версия демонстрации доступна на YouTube-канале разработчика, а поиграть с сетапами можно в бесплатном демо на itch.io.
FluidNinja уже успела поработать в ряде крупных игр. Среди тайтлов, где использовался инструмент:
Clair Obscur: Expedition 33
High on Life 2
Dune: Awakening
The Blood of Dawnwalker
The Elder Scrolls IV: Oblivion Remastered
The Callisto Protocol
По словам Кетцера, LIVE-2 – это не доработанная LIVE-1, а полностью новая программа, которая расширяет возможности оригинала. Вместо кода на C++ инструмент построен в основном на системе частиц Niagara и обёрнут в Blueprints, что должно упростить настройку. Именно сложность освоения была главной претензией к первой версии, и разработчик потратил три года, чтобы сделать LIVE-2 доступнее.
Любопытно, что эффект вязкости появился почти случайно. Кетцер пояснил, как это произошло:
Функция вязкости возникла благодаря эксплойту оригинального решателя жидкостей, перегрузке параметра дивергенции, который обычно нужно держать на низком уровне.
В основе FluidNinja лежит базовая двумерная модель Навье–Стокса. Для проекции давления используется собственный код, который работает не итеративно, а в два прохода с разделяемым фильтром и двумя ядрами – стандартным гауссовым и вручную настроенным с более крутым распределением.
Производительность инструмент масштабирует гибко, так как сама симуляция идёт в 2D, а основную нагрузку создаёт трёхмерная визуализация. Показанный сетап с грязью выдаёт 150 FPS на ноутбучной видеокарте RTX 3050. Для взаимодействия с персонажами можно использовать до 10 тысяч точек в реальном времени, так что при двух точках на ногах каждого героя система без проблем отслеживает от 100 до 500 персонажей.
Для работы LIVE-2 требуется Unreal Engine 5.6. Кетцер начинал разработку на UE 5.4, но нативные функции Chaos, чтение SDF и DataChannels оказались слишком нестабильными, и ситуация изменилась только после исправлений Epic в версии 5.6. Поддержки UE 5.5 нет.
LIVE-2 пока тестировали только на Windows, а работоспособность на Mac подтвердили недавно. Первая версия за годы существования прошла проверку на разных платформах, включая PS5 и Xbox.
Условия распространения остались щадящими. Для некоммерческих проектов, студентов и энтузиастов LIVE-2 бесплатна, а профессионалы могут опробовать инструмент до покупки. Unreal-проект с LIVE-2 доступен для загрузки на Discord-сервере сообщества FluidNinja.
- Подробный разбор технодемо киберпанковой RPG No Law на Unreal Engine 5 с более чем 3000 NPC в одном кадре
- Бывший разработчик Bungie сомневается в читаемости боя в Halo Campaign Evolved
- Вышел новый фанатский ремейк Zelda Ocarina of Time на Unreal Engine 5.7.4