Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оптимальные настройки V.docx
Скачиваний:
36
Добавлен:
11.02.2015
Размер:
11.55 Mб
Скачать

Современный Light cache

Light cache – оригинальный высокотехнологичный рендер-движок, похожий техникой составления карты глобального освещения на Photon map и, в то же время, по принципу просчета лучей являющийся его противоположностью. Суть техники просчета заключается в том, что Light cache (далее – LC), выпускает множество лучей из камеры, формируя карту глобального освещения в точках пересечения этих лучей с объектами данной сцены. Данные лучи не являются лучами глобального освещения, да и в принципе лучами как таковыми. Это всего лишь пути, направленные из точки обозревания на сцену. Луч LC, попадая на объект сцены, вычисляет в точке попадания цвет, учитывая свойства материалов и попадающее на нее освещение от источников прямого света или вторичного освещения.

Сравнивая LC с Photon map, следует отметить, что LC лишен всех основных недостатков своего «предшественника». LC считает лишь те зоны в сцене, которые видны из камеры. Он хорошо справляется с мелкими деталями и не создает затемнений на краях объектов. И, самое главное, Light cache способен работать со всеми источниками света, включая источники вторичного освещения.

Главные параметры Light Cache

В первой зоне Calculation parameters свитка V-Ray:: Light cache, находятся настройки, непосредственно влияющие на вычисление LC.

Примечание: Указанные далее рекомендации относительно конкретных значений параметров справедливы лишь для LC, используемого в качестве Secondary bounces GI engine. Подробнее о выборе движков GI читайте в следующем уроке.

Subdivs – параметр, определяющий количество лучей LC, трассирующихся из камеры в сторону сцены для определения цветов сэмплов.

Алгоритм LC условно разделяет сцену на ячейки, похожие на ячейки мозаики. После чего, определяет цвет каждой из них с помощью попавших в нее лучей LC, испускаемых из камеры. То есть каждая ячейка и есть неделимый цветовой образец, который будет использован в конечной карте GI.

Разумеется, чем больше количество лучей, определяемое значением параметра Subdivs, тем большим их числом будет "обстреляна" одна ячейка и тем более точно будет определен ее цвет. Реальное количество лучей LC равно квадрату значения параметра Subdivs, как и для других функций использующих аналогичный параметр в V-Ray.

Как правило, значения Subdivs  в 2000 – 3000 более чем достаточно для финального рендеринга фотореалистичных изображений. Однако в стартовых настройках V-Ray следует использовать установленное значение в 1000 Subdivs и повышать его лишь при необходимости.

Sample size – размер ячеек-образцов (samples). Когда размер ячейки задан, то алгоритм LC делит на них все изображение. После чего, трассирующие лучи определяют цвет каждой ячейки. Для определения цвета ячейки необходим как минимум один луч. Предположим, что общее количество лучей, заданных параметром Subdivs, меньше общего количества ячеек. Тогда алгоритм LC будет вынужден окрасить некоторые из рядом стоящих ячеек одним цветом, что визуально будет выглядеть как увеличение размера некоторых ячеек. Другими словами, можно сказать, что визуальный размер ячеек косвенно зависит и от значения параметра Subdivs и размер, заданный значением Sample size будет достигнут только если в сцене будет достаточное количество лучей LC. В случае, если количества лучей LC окажется больше количества ячеек, то некоторые ячейки будут просчитаны несколькими лучами LC и будут иметь более точный цвет, что улучшит итоговое качество визуализации.

Менять размер ячеек следует лишь, если в сцене находиться большое количество мелких деталей и карта LC недостаточно детализирована для их верной передачи. В большинстве случаев номинально установленное значение Sample size равное 0.02 вполне достаточно для большинства сцен. Именно его следует использовать в номинальных настройках V-Ray.

Scale – параметр в виде выпадающего списка, позволяющий задать единицы измерения размера ячеек. Всего в выпадающем списке два значения, это Screen и World соответственно.

Значение Screen позволяет указывать размер ячеек в дробном соотношении от финального изображения. Например, если Sample size равен 0.02, а Scale выставлено в Screen, то это означает, что каждая ячейка будет занимать 2% от размера всего изображения и т.д. Также следует понимать, что размер ячейки, заданный относительно экрана, не зависит от размера изображения в пикселях и от геометрии сцены. То есть, в сцене, представленной на изображении выше, размер ячеек на фронтальной грани куба и на стене за ним будут иметь одинаковый размер, несмотря на то, что геометрически эти поверхности находятся на разном расстоянии от камеры.

Значение World заставляет LC использовать для выбора размера ячеек системные единицы 3ds Max, установленные для данной сцены в System Unit Setup. При таком подходе, размеры ячеек геометрически будут одинаковы, но визуально их размер на данном виде из камеры будет зависеть от геометрии сцены. В таком случае в сцене, представленной на изображении ранее,  размеры ячеек на стене за кубом визуально будут меньше, чем размеры ячеек на фронтальной грани куба. Также, учитывая, что LC сэмплирует каждый участок изображения фиксированным количеством лучей, то на меньшую по размеру ячейку попадет меньшее количество лучей LC, по сравнению с большей. Это ухудшит качество сэмплирования меньших по размеру ячеек. На финальной визуализации это может проявиться как шум или артефакты на мелких деталях сцены.

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

Для рендеринга статических сцен, а также динамических анимаций, когда карта LC для каждого кадра просчитывается индивидуально и не может быть использована для совокупности кадров, необходимо использовать режим Screen. Это позволит уменьшить количество нежелательных артефактов. Именно значением Screen параметра Scale следует использоваться для LC в универсальных настройках V-Ray.

Number of passes – количество проходов просчета LC. Номинально просчет LC не многопоточный процесс, однако, он может быть специально разделен на несколько проходов (частей) с целью полной загрузки всех потоков многоядерной или многопроцессорной системы. Например, если просчет LC ведется четырехядерным процессором, можно LC не разбивать на проходы, то есть установить значение Number of passes равное единице. Тогда, во время просчета LC будет задействовано лишь одно ядро четырехядерного процессора, а остальные три будут простаивать, не участвуя в расчете LC. Поэтому для ускорения просчета LC его следует принудительно делить на количество проходов, кратное количеству доступных потоков системы. На сегодняшний день (Февраль 2011) количество ядер в большинстве доступных компьютерных систем не превышает восьми. Например, восемь ядер доступно в системе с двумя четырехядерными процессорами Xeon в двухпроцессорной материнской плате. Для большинства систем номинально установленное значение Number of passes равное 8 будет оптимальным и именно его стоит использовать в универсальных стартовых настройках V-Ray.

Store direct light – функция, позволяющая алгоритму LC сохранять не только информацию о GI, но и информацию о прямом свете сцены. Как мы уже знаем, LC трассирует лучи из камеры на объекты сцены. После пересечения луча с объектом сцены, алгоритм LC проверяет шейдер объекта для определения его цвета, и продолжает трассировку луча от этой точки к источнику света, освещающему ее для определения яркости. Другими словами, алгоритм LC по долгу принципа своей работы вынужден проверять и прямой свет, попадающий на данную точку. То есть, он изначально рассчитывает информацию и о прямом свете в сцене в том числе. Включение опции Store direct light позволяет кэшировать, то есть сохранять эту информацию о прямом свете в сцене. Традиционно, после того как прочитан рендер элемент GI, V-Ray отдельно просчитывает прямое освещение сцены. Сэмплирование прямого света сцены безусловно требует вычислительных ресурсов и занимает определенное время. Кэширование света, то есть предварительное сохранение информации о нем из LC и последующее использование готовой информации значительно ускоряет финальный рендеринг, избавляя алгоритм просчета прямого света от вычислительных затрат. Несложно представить качество полученного таким образом прямого света. Оно будет значительно хуже, чем при традиционном сэмплировании и будет напрямую зависеть от качества самой LC. Такой подход оправдан лишь в очень перегруженных сценах с огромным количеством источников света, прямой расчет света от которых займет долгие часы. Опять же, просчитанные таким образом изображения будут иметь существенные недостатки, явно выдавая компьютерное происхождение полученных изображений. Они будут выходить неживыми с "замыленными" и нечеткими тенями. В фотореалистичном рендеринге такой подход не оправдан, даже с учетом существенной экономии вычислительных ресурсов. В номинальных стартовых настройках V-Ray функцию Store direct light следует выключать.

Show calc. phase – превосходная, в некотором смысле незаменимая функция, позволяющая отображать достаточно информативное превью просчитываемого изображения уже в первые минуты рендера. Это позволяет избавиться от мучительных тестовых рендеров на низких разрешениях и помогает с легкостью настраивать освещение и материалы сцены, не дожидаясь всех стадий просчета финальной визуализации. Обязательно пользуйтесь этим при настройке Ваших сцен. Разумеется, эту функцию следует использовать в универсальных настройках V-Ray.

Adaptive tracing – функция, позволяющая использовать дополнительную информацию об освещении в сцене для каждого сэмпла LC и добавлять больше лучей в местах с большим количеством освещения. В некоторых случаях это помогает устранить шум на LC,  например, если в сцене присутствуют каустики. Однако это занимает ресурс оперативной памяти. На работу параметра Adaptive tracing также влияет функция Use directions only, которая активна лишь в случае, когда первая включена. На практике эта функция не вносит заметных улучшений в большинстве сцен и в стартовых настройках V-Ray ее не следует активировать.