IV. Частичное погружение
Данный проект является учебной работой студента Школы дизайна или исследовательской работой преподавателя Школы дизайна. Данный проект не является коммерческим и служит образовательным целям

Частичное погружение

примеры из кинематографа

Исходный размер 1920x800

«Аквамен» 2018 | behind the scene

Волосы, находящиеся одновременно в подводных условиях и на поверхности - сложный с технической точки зрения процесс. Чаще всего подобные сцены выбирают реализовывать без использования CG-волос, останавливаясь на мокрой прическе актера.

Однако в случае, когда герой является full-CG персонажем, приходится обращаться к грумингу.

Исходный размер 1371x771

«Алита: Боевой ангел» 2019 | VFX breakdown

Студия Wētā FX (ранее Weta Digital) на отработке фильма "Алита: Боевой Ангел" выбрала производить симуляцию волос и симуляцию воды отдельно друг от друга ради оптимизации процессов. Таким образом, динамика и анимация прядей лишь создают иллюзию взаимодействия с поверхностью воды. И происходит это с помощью переключения между двумя симуляциями: привычной гравитации на поверхности и "невесомости" под водой.

«Книга Джунглей» 2016 | VFX breakdown

Частый случай full-CG персонажа, требующего генерацию волос - животные. Так, в фильмах "Книга Джунглей" и "Муфаса: Король Лев" звери в некоторых сценах оказываются в тесном контакте с водой. Здесь VFX-артисты обращались к методу маскирования геометрии - выделяли зоны намокания и применяли к ним другую динамику, шейдер и стилизацию.

Исходный размер 2304x480

«Муфаса: Король Лев» 2024 | VFX breakdown

Однако метод комплексной flip-симуляции с коллизией шерсти тоже может быть использован, как например студией Wētā FX в фильме "Планета обезьян: Новое царство". Подобный способ крайне ресурсоемкий и сложный, однако окупается невероятной реалистичностью симуляции: грум намокает лишь при взаимодействии с частицами воды и отрабатывает анимацию исходя из физически корректных настроек капель. Таким образом, в фильме можно увидеть множество близких ракурсов с частично-мокрой шерстью.

«Планета обезьян: Новое царство» 2024 | VFX breakdown

Техническая реализация

погружение и выход

Принцип симуляции

до того, пока волосы не окажутся в соприкосновении с поверхностью воды, они будут подвержены одним правилам, после — другим. Поэтому следует разделить путь на два разных Vellum-солвера. Первый работает по стандартным законам гравитации с силой тяжести равной -9.8 по оси Y, второй — с силой 0.8 и дополнительными условиями.

Исходный размер 1220x72

obj > geo «contact_group»

В прошлой главе была рассмотрена симуляция, реализуемая через ноду Guide Simulation. Это комплексная нода, собранная специально для работы с волосами на базовом уровне. Однако симуляция погружения в воду и выхода из нее имеет более сложную структуру и для работы с ней нужно переходить на SOP-контекст.

Таким образом, создавая на Obj-уровень гайды волос, нужно связать их с нодой Guide Deform и из нее подать OUT_GROOM в Object Merge на новом SOP-контексте (geo нода с названием contact_group).

Исходный размер 1143x450

распаковка OUT_GROOM из Guide Deform и подача в Vellum Constrains (Hair)

Задаем каждому примитиву (index_prim) и каждой точке гайдов (index_pt) индексацию через Enumirate.

И подаем анимированные гайды и анимированную геометрию в ноду Vellum Constrains (Hair) для дальнейшей симуляции.

Исходный размер 1251x687

подключение surface к ray | vellum-солверы

Создаем поверхность воды с помощью обычного grid в нуле координат по оси-Y (будет использоваться под названием surface) и с помощью Poly Extrude из плоскости достраиваем куб, имитирующий пространство воды (water_box).

демонстрация Surface и Water Box

Исходный размер 1920x540

анимация головы

Vellum Solvers

post

Далее нужно разблокировать редактирование солвера для сухих волос и найти dopnetwork, в котором создать группу точек "wet" с ограничением по water_box (в разделе bounding с SOP-path).

А в солвере мокрых волос в dopnetwork подключить ноду noise field в gravity.

- ГРУППА WET группа точек, образующаяся при контакте с water_box и позволяющая контролировать смену одних условий симуляции на другие.

- NOISE добавляет хаотичность влияния гравитации на каждый волосок (можно регулировать амплитуду движения).

dopnet | сухие волосы, popgroup c группой wet

vellum solver сухие волосы | vellum solver мокрые волосы

SOP-контекст

Ray - нода, позволяющая переложить одну геометрию на другую с указанием осей. Таким образом, в качестве объекта коллизии используем surface, а отражающейся геометрии - подводную симуляцию из солвера. Значение -1 по оси Y позволяет задать условие, что при пересечении нуля координат в отрицательную сторону объект перестает отражаться на геометрии коллизии.

Это позволит создать эффект "натяжения" волос по поверхности воды и поможет в плавном переходе от одной симуляции к другой.

Исходный размер 1127x460

Подключая ноду Blend Shapes (в первый вход - сухая симуляция, во второй - мокрая), задаем ее влияние по группе wet и добавляем через "+" новый атрибут влияния. 1 в значении позволяет создать плавный переход от одной геометрии к другой при активации группы wet.

Исходный размер 1920x600

демонстрация blend shapes

IV. Частичное погружение
Проект создан 28.04.2026
Глава:
1
2
3
4
5
6
Мы используем файлы cookies для улучшения работы сайта и большего удобства его использования. Более подробную информац...
Показать больше