В рамках работы с визуальными эффектами в анимационном проекте «Русалка» в Houdini был проведён и разделён на две части R & D, затрагивающий подводные сцены:
— Dry-for-wet техники, не использующие Flip.
— Мокрый грум с применением разных методов.
Dry-for-wet
В кинематографе съёмки под водой традиционно считаются одним из наиболее трудных этапов съёмочного процесса. Физические ограничения, накладываемые самой водой, создают преграды для актёров и технической команды, требуя от них особых навыков и оборудования. Актёры испытывают дискомфорт: холод, давление, ограничения подвижности и сложности с дыханием влияют на качество игры и выражение эмоций. С технической точки зрения, необходимы дорогостоящие и громоздкие приборы: водонепроницаемые камеры, стабилизаторы и многое другое. Все это значительно усложняет процесс съёмок, создавая сложную логистику и увеличивая бюджет. В свете этих проблем современные технологии цифровых эффектов предложили альтернативное решение — Dry-for-wet.
В 3D аналагом Dry-for-wet можно назвать создание сцен с водой без использования традиционной Flip-симуляции. Flip симуляция — наиболее точный метод для создания реалистичных движений воды, брызг и пены. Она оперирует миллионами частиц, что позволяет достичь детальной и натуральной динамики жидкости.
Водная гладь
При создании водной поверхности были рассмотрены:
— Displacement. — Коллизия. — Пена.
— Displacement
Kelvin wakes или Клин Кельвина — это математический термин, обозначающий «форму стационарного волнового возмущения в виде клина, возникающую за движущимся по поверхности воды судном.» (Большая Российская Энциклопедия, 2023)
Метод с деформацией вертексов стал основной ноды Kelvin wakes deformer. Она была создана SideFX целеноправленно для имитации волн от коллизии геометрии с водной поверхностью, где считывается информация от движущейся геометрии и передаётся на грид, деформируя точки.
Демонстрация ноды Kelvin_wakes_deformer
Нода Ocean Spectrum используется в паре с нодой Ocean Evaluate. Она берёт грид и создаёт объёмы, они содержат информацию, моделирующую влияние ветра или приливных сил на волны.
Kelvin Wake Deformer вместе с Ocean Spectrum
Рендеры
— Коллизия
Для отрабатывания коллизии объекта с гридом в Houdini существует нода Extracttransform. У ноды два входа, один для референсной геометрии, другой для таргетной. Нода считывает трансформации точек одной геометрии и переносит их на другую.
Отработка коллизии на волнах
Рендер
— Пена
В первую очередь пена от бурного потока воды в CGI — это партиклы. К сожалению, при попытках создать пену используя текстуры и другие приёмы, она оказалась довольно неправдоподобной, поэтому самым лучшим способом для создания пены всё же является Flip.
Стоит учесть, что, при работе с Flip симуляцией необходимо правильно оптимизировать сцену: подготовить геометрию, удалить ненужные атрибуты и кэшировать разные этапы симуляции.
Контейнер с Flip
Пена создаётся на основе партиклов созданной Flip симуляции. Для пены используются ноды White water source, которая создаёт партиклы в зависимости выбросов жидкости, и White water solver для последующей симуляции.
Отработка пены
Демонстрация флюида с пеной
Рендер
Таким образом без использования Flip симуляции возможно сделать довольно убедительную поверхность воды с коллизией объекта в Houdini за счёт деформации вертексов и шейдера. Однако, нельзя создать сцену с пеной или брызгами без использования Flip.
Подводная сцена
В подводной сцене были рассмотрены:
— Волюметрики. — Каустика.
— Волюметрики
Для анимации снова создаётся грид с использованием нод ocean_spectrum и oceans_preview. В данном случае грид и работает в качестве подвесного «аквариума».
Грид с имитацией движения воды




