пятница, 28 января 2011 г.

Настройка рендера V-Ray. Indirect Illumination (GI)

Решил написать серию постов о настройке параметров визуализатора V-Ray и постараться собрать воедино насколько это получится весь имеющийся у меня материал.
Использую Autodesk 3DS Max 9 32, V-Ray 1.50 RC5.
Сегодня буду тестить настройки вкладки Indirect Illumination (GI).
Для начала что это такое?


Indirect Illumination (GI) - просчет непрямого (косвенного) освещения в визуализаторе V-Ray.
Для того, чтобы наглядно получить представление о его действии, создадим простую сцену - плоскость и чайник. Без источников освящения.
Далее зайдем в настройки окружения: Rendering ->Environment
и поменяем значение Background Color на более светлое, чем черный.
Я установил R: 144, G: 167, B: 241. Получился светло-синий цвет.


Далее переходим к настройкам самого рендера.

В свитке Global Switches:  обязательно выключаем Default Lights и включаем Override mlt, указав стандартный материал Vray для примитивов сцены.
Для того, чтобы окончательный рендер, произведенный в V-Ray был наиболее фотореалистичным необходимо использовать исключительно материалы V-Ray, избегая типа Standard.

Далее раскрываем свиток V-Ray: Indirect Illumanation (GI).
Здесь интересуют два показателя, это Primary Bounces и Secondary Bounces - первичный и вторичный диффузные отскоки.

Настройки для непрямого освещения в V-Ray разделены на две секции:
Настройки алгоритма первичного отскока и настройки связанные с алгоритмом для
просчета вторичного отскока. Первичный диффузный отскок происходит, когда точка
отображения (шейдинга) прямо видна камерой, или через отражение/преломление.
Вторичный отскок происходит, когда точка отображения (шейдинга) используется в
просчете GI (глобального освещения).

                                                                                                             (V-Ray Manual)

Попробуем различные комбинации этих двух параметров и выберем наилучшую. Устанавливаем значения и жмем Render.

1
Primary bounces: Irradiance map
Secondary bounces: None
В целом для тестового рендера неплохо, темновато конечно, но учитываем отсутствие источников света. Пробуем дальше...

2
Primary bounces: Irradiance map
Secondary bounces: Quasi-Monte Carlo
Гораздо светлее и тень стало мягче. Далее...

3
Primary bounces: Irradiance map
Secondary bounces: Light Cache
Ещё немного светлее и неплохая тень.
4
Primary bounces: Quasi-Monte Carlo
Secondary bounces: Light Cache
Появился заметный шум.

5
Primary bounces: Light Cache
Secondary bounces: None
Тень стала пластилиновой...

6
Primary bounces: Light Cache
Secondary bounces: Quasi-Monte Carlo
Пластилин остался...

7
Primary bounces: Light Cache
Secondary bounces: Light Cache
Не подходит...

Теперь попробуем создать в сцене источник света VRayLight, примерно вот так:

В настройках я выставил: Multiplier:4, Subdivs:12
Делаем рендеры с теми же комбинациями Primary и Secondary bounces.

1
Primary bounces: Irradiance map
Secondary bounces: None


2   Primary bounces: Irradiance map
Secondary bounces: Quasi-Monte Carlo


3
Primary bounces: Irradiance map
Secondary bounces: Light Cache
4
Primary bounces: Quasi-Monte Carlo
Secondary bounces: Light Cache
5
Primary bounces: Light Cache
Secondary bounces: None
6
Primary bounces: Light Cache
Secondary bounces: Quasi-Monte Carlo
7
Primary bounces: Light Cache
Secondary bounces: Light Cache
Замечания к рендерам все теже, что и без источника света. Совершенно очевидно, что значение Light Cache для Primary bounces даёт плохой эффект. Если не брать во внимание зашумленность теней, что может быть вызвано значениями других параметров V-Ray, то можно сказать, что наиболее качественный тестовый рендер получился в вариантах 2 и 3, то есть с использованием значения Irradiance map у Primary bounces.

- irradiance map алгоритм очень быстрый по сравнению с прямым просчетом,
особенно для сцен с большим количеством плоских поверхностей;
- шум присущий прямому просчету значительно уменьшается при использовании
irradiance map
- некоторые детали в GI, могут быть потеряны или размыты в результате
интерполяции;
- если используются low настройки, может появиться мерцание (flicker) при
анимации;
- irradiance map требует дополнительной памяти;
- непрямое освещение с быстро движущимися объектами (motion-blurred) может быть
не совсем корректным и может вести к появлению шума (хотя в большинстве случаев
этого не происходит).

                                                                                                             (V-Ray Manual)

Какое значение выбирать для Secondary bounces?
Смотрим описания в мануале...

Quasi-Monte Carlo GI - это самый простой подход; непрямой
свет GI рассчитывается независимо для каждой точки поверхностей сцены путем
прослеживания лучей в различных направлениях от этой точки.

Преимущества:
- этот подход сохраняет все детали (мелкие и четкие тени) в непрямом освещении;
- прямой расчет свободен от дефектов, таких как мерцание (flicker) при анимации;
- не требует дополнительной памяти;
- непрямое освещение в случае быстрого движения (motion-blurred) объектов рассчитывается корректно.

Недостатки:
- этот подход очень медленный для сложных сцен (например, освещения помещений);
- прямой расчет создает шум в изображении, который может быть устранен только
- увеличением числа лучей, что в свою очередь еще больше замедляет рендер.
  

Light map -алгоритм приближенного расчета глобального освещения в сцене. Строится путем прослеживания множества путей начиная от камеры. Каждое отражение на пути сохраняет освещение от других лучей в 3d структуре.
Light map это универсальное GI решение которое может быть использовано и для интерьеров (помещений) и для открытых сцен, или прямо или как алгоритм вторичного отскока совместно с irradiance map или Quasi-Monte Carlo GI методом. 

Преимущества: 
- lightmap просто настраивается. Лучи прослеживаются только от камеры.
- light-mapping алгоритм работает эффективно с любыми видами источников - включая skylight, self-illuminated объекты, non-physical, photometric и т.д. В противоположность, photon map не ограничен в световых эффектах, которые может воспроизвести - например photon map не может воспроизвести освещение от skylight или от стандартного omni без обратно квадратичного снижения интенсивности с расстоянием.
- light map обеспечивает корректные результаты в углах и вокруг небольших объектов. Photon map, использует сложный алгоритм оценки плотности, который часто дает ошибочные результаты, или затемняя или пересветляя такие области.
- во многих случаях light map может быть использован для быстрого и качественного превью освещения в сцене. 

Недостатки: 
- как и irradiance map, light map зависит от положения камеры. Однако, генерирует аппроксимацию освещения всей сцены вместе с невидимыми для камеры частями, например, один просчет дает полную оценку GI в замкнутом помещении;
- в настоящее время работает только с V-Ray материалами;
- так же как и photon map, light map не адаптивный метод. Освещение рассчитывается с постоянным качеством, установленным пользователем в настройках.
- light map работает не достаточно хорошо с bump maps;
- используйте irradiance map или Quasi-Monte Carlo GI для получения корректных результатов при использовании bump maps.
- просчет освещения движущихся объектов (motion-blurred) выполняется не полностью корректно, хотя и дает очень сглаженный результат, так как lightmap сглаживает GI во времени (что противоположно irradiance map, где каждый сэмпл просчитывается в отдельный момент времени).

Какой метод использовать? Это зависит от задачи.
                                                                                                             (V-Ray Manual)

Я не рассматривал использование  Photon map, поскольку: 
Photon map обычно не дает достаточно хорошего результата для использования в финишном рендере; однако может быть использован как грубое приближение освещения сцены.
                                                                                                             (V-Ray Manual)
 

Я решил продолжить и доработать тень, а именно снизить её зашумленность.
Выбрав в качестве конечного вариант №3, вносим следующие изменения в настройки V-Ray:

Adaptive QMC sampler

Этот сэмплер берет переменное число сэмплов для каждого пикселя, основываясь на разнице интенсивности пикселя и его соседей. Этот сэмплер сильно связан с V-Ray QMC sampler.

Adaptive QMC сэмплер не имеет своей настройки порога шума; вместо этого он использует параметр Noise threshold QMC sampler-а для управления качеством.

                                                                                                             (V-Ray Manual)

Чем меньше значение Noise threshold, тем меньше шума на финальном рендере и естественно дольше длится сам рендер. Замечено, что при установки значения меньше 0,005 разницы не заметно, поэтому остановимся на этой цифре.


Финальный рендер.

Сравниваем результаты:
Успехов и качественных рендеров...

Комментариев нет:

Отправить комментарий