Советы по работе с материалами V-Ray, часть 2: отражения Reflection

Раздел: VRay, Советы

Продолжаем разбирать материал VRayMtl по косточкам, и сегодня у нас на хирургическом столе оказался следующий его компонент, по степени важности идущий сразу за Diffuse, о котором мы говорили в первой части курса по VRayMtl...

Reflection

... или отражения, если по-русски. Как видите, здесь гораздо больше параметров, чем у Diffuse.

vray reflection

Возможно, принцип работы построения отражений будет легче понять, если представить их, как слой, наложенный поверх Diffuse. При 100% величине Reflect [255;255;255] материал будет давать полное отражение окружающей обстановки, света и т.д. Чтобы сквозь отражения можно было разглядеть Diffuse, в цветовом селекторе Reflect надо задать более тёмный оттенок серого. При абсолютно чёрном цвете виден будет только Diffuse. В общем понимании схема взаимодействия Reflection и Diffuse выглядит именно так, хотя на самом деле всё устроено малость замысловатее.

vray reflect величинаvray reflect величина

Добавление реализма при помощи текстур

Отражения, как и большинство других каналов в V-Ray, можно охарактеризовать при помощи цвета, карты или текстуры. Здесь действует тот же принцип, что и для карт в канале Diffuse: если это не гламурный, прилизанный до лоска студийный рендер, то в интенсивности отражения обязаны присутствовать какие-нибудь несовершенства. Кроме того, вместо однородного цвета лучше использовать карту или текстуру.

В общем плане для получения реалистичных результатов значение Reflect следует держать в диапазоне от 1 до 230 единиц.

vray карты отраженийvray карты отражений

Всегда включайте Fresnel

Так почему же наши материалы кажутся такими ненатуральными?

Проблема кроется в том, что в неестественно выглядящих материалах свет отражается одинаково в любом направлении взгляда. В реальном мире вещи обладают разными отражательными интенсивностями, зависящими от угла наблюдения по отношению к линии взгляда. По общему правилу, чем меньше этот угол, тем интенсивнее становится отражение. Даже те материалы, которые мы изначально считаем неотражающими, будут довольно-таки заметно отражать, если линия вашего взгляда на них будет проходить почти параллельно им самим.

Примеры? Пожалуйста!

vray fresnelvray fresnel

На первом изображении обратите внимание, как отражение становится сильнее по мере отдаления пола от камеры. На втором отражения усиливаются ближе к краю шара для боулинга. Таким образом становится очевидно, что уменьшение угла наблюдения приводит к усилению отражений. При взгляде на объект перпендикулярно (90°) отражения оказываются гораздо слабее, чем если бы мы посмотрели на него под небольшим углом.

угол по френелюугол по френелю

Сымитировать этот эффект в V-Ray можно, задействовав параметр Fresnel Reflections (Отражения по Френелю).

настройки fresnel

Вообще рекомендуется включать опцию Fresnel в каждом создаваемом материале. Разница между хромом и бетоном заключается в значении Fresnel IOR (Коэффициент преломления отражений по Френелю). Оно определяет, как именно должен происходить спад отражений. Чтобы получить к доступ к настройке Fresnel IOR, отключите кнопку L. Имейте в виду, что дефолтное значение 1.6 сгодится разве что для стекла и некоторых типов пластика.

fresnel iorfresnel ior

   
Ниже приведены общие рекомендации, для каких материалов какие значения следует применять:
  • вода: 1.33;
  • пластик: 1.4-2.4;
  • стекло: 1.5-1.8;
  • алмазы: 2.4;
  • композиционные материалы (древесина, искусственный и природный камень, бетон и т.д.): 3-6;
  • металлы: 18-100 (хотя превышать значение 40 можно лишь в крайних случаях).

Reflection Glossiness

reflection glossiness

Параметр определяет, насколько блестящим будет выглядеть материал. Чем выше значение, тем больше глянца (блеска). У идеально отполированной поверхности величина глянца составила бы 1 (стоит по умолчанию). Но поскольку ничто в нашем мире не идеально, ставить выше 0.99 нецелесообразно.

Понижение величины глянца делает отражения более размытыми. Эффект чем-то напоминает зашкуривание поверхности материала мелкой наждачкой. Но этому есть и своя цена: чем размытее отражения, тем труднее V-Ray их рассчитывать. Отсюда на выходе и зашумлённость материала, и увеличение времени рендеринга. Для самых шероховатых поверхностей величина Reflection Glossiness (Размытие отражений) не должна опускаться ниже 0.35.

Таким образом, допустимый диапазон значений составляет от 0.35 до 0.99.

reflection glossiness диапазонreflection glossiness диапазон

Расцепляем Hilight и Reflection glossiness

По умолчанию Reflection glossiness и Hilight glossiness (Размытие бликов) связаны между собой. Однако бывают случаи, когда целесообразнее отсоединить их друг от друга, установив Hilight Glossiness в значение несколько пониже. В результате отражения останутся такими же чёткими, но плюс к этому мы получим небольшое свечение вокруг них. В реальности именно так и происходит с большинством объектов:

шлем 3ds max

Пойдя на такое маленькое ухищрение, мы сможем сымитировать подобный внешний вид без прибавки ко времени визуализации. Строгих правил, указывающих, на сколько нужно понижать блеск Hilight, нет, а потому оценивайте материал на глаз по ситуации. Хотя, в принципе, хорошо смотрится разница между Hilight и Reflection Glossiness где-то от 1.0 до 1.5 раз.

vray hilight gloss

Применение текстур для контроля над блеском

Как только вещь покинет свою упаковку и человек к ней прикоснётся, отражения на ней больше не будут казаться везде одинаково блестящими. Места, которые трогали руками или слегка задели чем-то шероховатым, в жизни становятся чуть более размытыми из-за жиров, царапин и других факторов от воздействия с внешним миром. Старайтесь использовать текстуры или карты вместо однородного цвета. При этом разброс яркости рисунка текстуры или карты может варьироваться хоть и самую малость, но на конечном результате это отразится в лучшую сторону — крайне важно уделять внимание таким мелочам. В противном случае вещь на визуализации будет выглядеть фальшиво.


Зачастую желательно производить карту Refl. Glossiness из карты Reflect, а сверху неё можно наложить ещё какую-нибудь текстуру, сделав итоговый вид Refl. Glossiness более интересным. Области с меньшей отражательной способностью можно также слегка заблюрить в Photoshop. Опять-таки, правило не строгое и вы в праве его нарушить, если результат вас устраивает.

refl. glossrefl. gloss

vray gloss карта

В данном примере для большего реализма материалу не хватает чуточку бампа, но мы затронем эту тему позже.

Следующим у нас идёт Subdivs (Подразбиения).

vray сабдивы

Этот настроечный параметр определяет количество сэмплов, которые V-Ray может использовать для очистки размытых отражений от шума. Проще говоря, больше сэмплов — чище отражения.

значения subdivsзначения subdivs

Примечание: большинство пользователей V-Ray для рендеринга изображений предпочитают использовать сэмплер Adaptive DMC. Это подразумевает под собой, что фактическое количество сэмплов, необходимое для получения чистого изображения, меняется в зависимости от настроек DMC: при 1/4 потребуются более низкие значения, чем при 1/100. Рекомендуется оставлять эту настройку в стандартном значении (8 сабдивов), если планируете передавать свои модели или материалы другим людям. У каждого из нас имеется своё видение рабочего процесса, кажущееся единственно верным, и соответственно будет лучше, чтобы каждый сам уже настраивал сабдивы, как ему или ей хочется. В противном случае человеку может быть обеспечено «весёлое» времяпровождение с вылавливанием материала, у которого количество сабдивов задрано до небес, что, вероятнее всего, не будет вписываться в его сетап рендеринга.

Max depth и Exit color

vray refl. depth

Параметр Max depth (Максимальная глубина) определяет, сколько раз отразится луч света, формирующий отражение, прежде чем перейти в состояние Exit color (Цвет выхода). Опция помогает ускорить процесс визуализации за счёт уменьшения количества вычислений, которые V-Ray вынужден делать специально для отражений. Вот вам пример, где цвет выхода установлен синим:

vray max depthvray max depth

В большинстве случаев подходят настройки по умолчанию. Если у вас в сцене достаточно много зеркал или других отражающих объектов, то может понадобиться увеличить максимальную глубину отражений луча в параметре Max depth, однако выставлять больше ~20 обычно не целесообразно.

Если на материале есть размытые отражения, можно немного ускорить их расчёты без потери качества за счёт уменьшения Max depth. Руководствуйтесь следующей табличкой:  
  • Refl. glossiness 0.9-0.99 = max depth 5
  • Refl. glossiness 0.8-0.89 = max depth 4
  • Refl. glossiness 0.7-0.79 = max depth 3
  • Refl. glossiness 0.6-0.69 = max depth 2
  • Refl. glossiness 0.35-0.59 = max depth 1

Низкие значения Max depth никаких негативных последствий не принесут, поскольку отражения сильно размыты. Приведенные здесь значения служат скорее приблизительным ориентиром, так что, если будет нужно, вы всегда можете подстроить их под себя.

Менее известные параметры

На этом обзор свитка Basic parameters (Основные параметры) для отражающих поверхностей можно считать завершённым. В нынешние времена задействоватьUse interpolation (Применять интерполяцию) резона нет, т.к. намного быстрее и проще включить для этого галочку Use light cache for glossy rays (Использовать световой кэш для расчёта бликующих лучей) в настройках рендеринга V-Ray. Dim distance (Расстояние затухания) и Affect channels (Воздействие на каналы) используются только в некоторых очень специфических случаях (больше относится к оптимизации сцены, нежели чем к созданию материалов).

vray параметры

BRDF

Чуть ниже, в свитках BRDF и Options, спрятаны ещё несколько немаловажных параметров.

BRDF (Bidirectional Reflectance Distribution Function — функция распределения двунаправленного отражения) — это некая математическая модель, применяемая для расчёта отражений и зеркальности материалов. На выбор доступны три типа таких моделей: Blinn (По Блинну), Phong (По Фонгу) и Ward (По Уорду). У каждого из них есть свои особенности поведения.

BRDF

BRDF моделиBRDF модели

Как вы можете видеть, основное различие заключается в способе обращения с бликами. Phong даёт самые чёткие блики, Blinn — чуть размытее, а Ward — наиболее мягкие.

Жёстких правил, указывающих, когда какой тип нужно применять, нет, но в виде общих рекомендаций можно принять к сведению, что Ward подходит для имитации металлов и анизотропных материалов, а Blinn и Phong для всего остального (подойдёт любой, какой вам больше нравится). Единственное исключение для Ward, когда его не рекомендуется применять, касается металлов, отполированных до зеркального блеска, или имеющих очень чёткие отражения, такие как хром, золотые ювелирные изделия и т.д.

Anisotropy

анизотропия

Анизотропия применяется для имитации удлинённых бликов. В реальной жизни причиной таких бликов являются продолговатые микроцарапины, идущие в том же направлении. Ниже — пара примеров для наглядности. Эффект наиболее заметно выражен на шлифованном металле.

примеры анизотропиипримеры анизотропии

Анизотропию следует устанавливать в интервале значений от -0.99 до 0.99. При -1; 0 и 1 изменений вы не увидите.

По мере приближения значения к 1 (или -1) эффект усиливается. Разница между отрицательными и положительными величинами заключается в направлении растягивания. При положительных отражения растягиваются по горизонтали (имитирует вертикальный узор царапин), а отрицательные дают вытянутые по вертикали отражения (имитация горизонтального узора царапин).

сила анизотропиисила анизотропии

Эффект растягивания можно также вращать на любой угол с помощью параметра Rotation (Вращение).

vray anisotropy rotation

Можно также выбрать ось для проведения вычислений, что позволит получить ещё больший контроль над анизотропией.

анизотропия осианизотропия оси

Для обеспечения правильной работы Anisotropy необходимы размытые отражения. Если Reflection glossiness у вас установлен в очень высокое значение, то эффект работать не будет.

Аналогично другим аспектам V-Ray, для управления параметрами анизотропии имеется возможность использовать карты или текстуры.

Точное количество дефектов, привносимое анизотропией, можно тонко настроить, поместив в Anisotropy текстуру с уменьшенной силой воздействия. Имейте в виду, что текстурные карты работают только как положительные величины, поэтому лучше комбинировать их с положительными значениями силы Anisotropy. В примере ниже в свитке Maps (Карты) у нас используется смесь из Anisotropy 0.6 + 20% текстуры. На выходе материал выглядит чуть более естественнее, чем если бы мы просто решили сделать анизотропию однородной.

анизотропия текстура смешивание

анизотропия текстура

Карты углового поворота An. Rotation применяются для изменения направления распространения царапин. Приём пригодится, например, для создания круговых узоров или металлических чешуек, отражающих свет в случайных направлениях. Плавные градиенты делают угловой поворот постепенным, в то время как карты, состоящие из «лоскутов» различных цветов, дают резкие переходы, при этом каждый оттенок серого отражает под разным значением угла поворота.

анизотропия хлопьями

анизотропия градиент

Свиток Options

Прежде чем поставить точку в теме об отражениях в V-Ray, рассмотрим ещё пару достойных внимания настроек. Давайте перейдём в свиток Options (Опции) и взглянем, что он нам предлагает.

vray options

Все выделенные выше опции влияют на формирование отражений.

Прежде всего, никогда не отключайте опцию Trace Reflections (Трассировка отражений), поскольку она жизненно важна для получения реалистичного результата. Если её отключить и оставить только фейковые зеркальные блики, отражения станут ни рыба, ни мясо: округлые, с фальшивыми бликами, независимо от формы источников света и окружения.

vray speculars

Следующей у нас идёт опция Reflect on back side (Отражения на обратной стороне). По умолчанию она выключена, и так и должно быть для большинства материалов, т.к. это помогает сократить время рендеринга. А вот если надо создать стекло или другой прозрачный материал, придётся эту опцию включить, иначе на выходе реалистичность пострадает.

reflect on back side vray

И, наконец, рассмотрим Energy Preservation mode (Режим сохранения энергии). Стоящая по умолчанию настройка RGB в физическом смысле корректна, однако в некоторых случаях результат бывает трудно предсказать. В качестве иллюстрации посмотрите на белый материал с синими отражениями (ниже).

Величина Reflection вычитается из Diffuse. Для наглядности возьмём белый цвет Diffuse [230; 230; 230] и синий Reflection [0; 0; 230]. Так что же получится после вычитания? А получится жёлтый цвет [230; 230; 0], что в точности мы и видим после рендеринга на данном конкретном примере:

rgb

Переключите Energy Preservation mode в режим Monochrome (Монохромный), и результат окажется куда более предсказуемым: получится белый диффузный цвет с синими отражениями.

refl. mono

монохром

Такие типы материалов на практике встречаются нечасто. Изменять эту опцию стоит только в тех редких случаях, когда нужно создать цветные отражения поверх яркого диффузного цвета.

В следующей части курса по материалу VRayMtl мы поговорим о преломлениях Refractions.


Другие материалы:

Здесь с 23.02.2014
7 комментариев
Откуда: Томск
Репутация: 0

 

#1 добавил dimano2

21 июня 2014 22:03 | Комментариев: 7
Шикарный урок, спасибо автору!
Здесь с 24.10.2014
1 комментарий
Репутация: 0

#2 добавил janenazaryan

24 октября 2014 18:48 | Комментариев: 1
Спасибо за очень крутой урок! good

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.