Рендеринг пересекающихся поверхностей с разными коэффициентами рефракции.
Этот туториал рассматривает довольно типичный пример визуализации жидкости в стакане с использованием подключаемого модуля VRay.
С точки зрения моделирования зачастую трудно проверить точную границу соприкосновения двух поверхностей достаточно сложной формы и если в статичной сцене это как-то можно отрегулировать, то для анимации данный процесс становится проблематичным. Важным аспектом визуализации подобных поверхностей является тот факт, что движок рендеринга не может правильно вычислить точный граничный регион используемых объектов.
При определении сущности данного вопроса у нас есть три возможных пути моделирования пересечения поверхностей с разными коэффициентами рефракции:
1)жидкость и стакан не соприкасаются и между ними имеется промежуток.Данный метод довольно прост к использованию, но не дает в итоге правильного изображения и связано это с характером рендера подобных объектов.Жидкость в результате применения этого способа становится похожей на обычный твердый блок.
2)жидкость пересекается со стаканом.Данный метод потенциально производит более качественный результат, но требует, однако, специальной поддержки от системы визуализации, поскольку слежение луча вдоль пересечения поверхностей должно выдавать правильный IOR.К счастью, VRay обладает указанной возможностью и этот способ можно определить как предпочтительный.
3)третий метод заключается в отдельном моделировании пересечений, что достаточно трудно осуществить, например, в сценах с движением жидкости.Также данный способ не очень хорошо действует с применением функции Fog в материале стекла, т.е. при использовании дополнительного объекта величина затуманенности не может определяться правильно.
В ходе следования уроку Вы ознакомитесь с первыми двумя рассмотренными методами, т.к. третий способ более трудно осуществить применимо к модулю рендеринга VRay.
Установка настроек начальной визуализации.
1.1.Откройте стартовую сцену, скачать которую можно по этой ссылке.
1.2.Назначьте VRay в качестве текущего рендера.
1.3.Для менее длительной визуализации превью сцены мы воспользуемся типом Fixed из свитка Image Sampler.
Далее нам необходимо задать более приемлемые настройки GI.
1.4.В свитке Indirect Illumination включите GI и установите как Primary, так и Secondary GI Engines к Light Cache.
1.5.Выключите Refractive GI Caustics.Для итогового изображения мы добавим возможность вычисления фотонной каустики.
1.6.В свитке Light Cache установите Sample Size к 0,04 для получения менее шумных сэмплов Light Cache.
1.7.Установите Filter Mode к Fixed и измените Filter Size к 0,08, поскольку нам нужно отобразить Light Cache напрямую.
1.8.Выключите функцию Store Direct Light.
1.9.Установите количество Subdivs Light Cache на 500.
1.10.Дополнительно Вы можете включить Frame Stamp в настройках свитка System.
1.11.Отрендерите сцену.
На изображении мы видим только стакан - добавлением в него жидкости мы займемся на следующем этапе.
Рендеринг жидкости.
2.1.Примените Unhide к объекту Liquid Inside.При увеличенном рассмотрении поверхностей стекла и жидкости можно заметить небольшой промежуток между ними.
2.2.Визуализируйте сцену.
Хотя расстояние между стаканом и жидкостью очень мало, полученный результат трудно назвать правильным, т.к. жидкость на картинке выглядит подобно твердому блоку.Для исправления этого мы попробуем использовать взаимное пересечение двух используемых поверхностей.
2.3.Скройте объект Liquid Inside и примените Unhide к объекту Liquid Overlapped.Теперь можно заметить небольшое взаимное пересечение стекла и жидкости.
2.4.Отрендерите текущую сцену.
Результат выглядит намного лучше и можно уже говорить о правильности отображения жидкости в стакане.
Итоговый рендеринг.
Для итоговой визуализации сцены мы улучшим сглаживание и добавим фотонной каустики.
3.1.Включите Caustics в одноименном свитке.
3.2.Установите Max Density к 0,2, т.к. мы хотим ограничить плотность каустических фотонов для получения более сглаженного эффекта.
3.3.Установите Search Distance к 2,0.Типичные величины данного параметра оцениваются увеличением в 5 или 10 раз Max Density.
3.4.Установите Max Photons на ноль - это позволяет рассматривать все фотоны в пределах Search Distance из точки затенения.
3.5.Нажмите Render.
Что же, теперь мы можем видеть каустику, но она слишком шумная.Для уменьшения шума нам требуется увеличить Caustic Subdivs для освещения.
3.6.Выберите источник света VRay Light.
3.7.Щелкните правой кнопкой мыши в окне проекции и выберите VRay Properties для открытия диалогового окна Light Settings.
3.8.Установите Caustics Subdivs на 4000.
3.9.Визуализируйте сцену.
Каустика выглядит достаточно хорошо, но если Вам требуется более сглаженный результат, то можно дополнительно увеличить количество Caustic Subdivs у ИС и/или увеличить параметр Search Distance.
3.10.Для того, чтобы избежать каждый раз вычисления карты каустических фотонов, желательно определить ее сохранение и дальнейшее использование From File.
Далее нам нужно улучшить Antialiasing визуализируемого изображения и уменьшить шум от Area областей источника света
3.11.В свитке Image Sampler измените тип сглаживания изображения на Adaptive QMC.
3.12.В настройках свитка QMC Sampler установите Noise Threshold на 0,002.
3.13.Установите Global Subdivs к 8,0, что позволит уменьшить шум от Area областей источника света.
3.14.Визуализируйте итоговое изображение.
Источник: www.maks3-5.h12.ru
|