VrayMtl | Reflect | Part II
VrayMtl - Reflect parameter. Part II

   Пытливые умы зададут вопрос — может ли параметр Reflect у неметаллов быть цветным или серым? Да... допускаю такую возможность, но здесь главное не увлекаться. Разберу несколько примеров из своей практики, когда возникала объективная необходимость делать параметр Reflect отличным от белого цвета.

 Эффект применения поляризационного фильтра.


   Что бы погасить яркие блики — фотографы применяют поляризационные фильтры для объективов. Поляризационный фильтр гасит отражения и блики на всех поверхностях, за исключением металлических. Поэтому не всегда фотография, как референс, может быть истиной в последней инстанции. Честные блики могли быть просто урезаны поляризатором для получения более эстетичной картинки. Пример как работает поляризационный фильтр. Слева — "честное" фото, справа — снимок с использованием поляризационного фильтра.

Поляризационный фильтр

другие примеры можно посмотреть здесь




   Решая свои художественные задачи в визуализации, мы можем имитировать поляризацию через понижение яркости белого в параметре Reflect до нужного оттенка серого, при этом IOR материала оставляем без изменения — поляризационный фильтр гасит отражения, а не меняет IOR у материала.
   На практике я иногда понижаю яркость параметра Reflect у шейдеров стекла (офисные перегородки) и воды (бассейн), чтобы приглушить сильные отражения. Данным эффектом не стоит увлекаться, но и пренебрегать такой возможностью тоже не нужно, всё зависит от конкретных задач. В любом случае начинать стоит со стандартных решений, а потом уже нивелировать параметр Reflect если этого будет требовать ситуация.

 Эффект "просадки" отражения.


   Что я подразумеваю под этим термином — просадка? Многие материалы, не однородны по своей плотности. Возьму в пример древесину. Ее структура неоднородна и состоит из мягких и плотных слоев древесины. Мягкие волокна древесины более пористые и при обработке лаком впитывают его сильней, плотные волокна наоборот сопротивляются пропитке и слой лака остается на поверхности. В результате получаем неравномерный блеск у дерева, который называют просадкой лакового покрытия. Конечно при повторном покрытии этот дефект исчезает.
   Другая ситуация. В результате эксплуатации — деревянные поверхности истираются. Твердые волокна, со временем, шлифуются и полируются становясь глянцевыми. Мягкие волокна истираются, образуя углубление с матовой поверхностью.
   Данный эффект свойственен многим материалам с пористой и шероховатой структурой поверхности - древесина, природный камень, бумага, ткань, бетон, кожа и т.д. Реализуется он просто — делаем диффузную текстуру черно-белой и размещаем в слоте Reflect. Белый цвет у текстуры это максимальная сила параметра Reflect, черный цвет это минимум.
   На примере видно, когда цвет параметра Reflect белый, то материал выглядит покрытым пленкой, а когда используется черно-белая текстура — поверхность материала стала выглядеть пористой и шероховатой. Такое решение усиливает (проявляет) мелкий рельеф материала и прекрасно дополняет работу параметра Bump. В первом случае дерево выглядит как ламинат, во втором случае как дерево покрытое лаком в один слой.

Reflect | White color Before
Reflect | Black & White image After


 Цветные отражения.


   Я допускаю, что в некоторых случаях можно использовать цветную текстуру для параметра Reflect у неметалов. В своей практике данный эффект я применяю для отражений у тканей и деревянных поверхностей
   Не однократно обращал внимание, что дерево не покрытое лаком или другим каким-то защитным составом имеет блеск. Причем этот блеск, в зависимости от породы древесины, имеет цветной оттенок — слегка обесцвеченный оттенок диффузного цвета самой древесины. Когда же дерево покрыто лаком, то данный эффект раскрывается сильней и можно увидеть вторичный цветной блик дерева, при определенных углах обзора. В целом это уже из серии "задротства" и на практике я применял данный подход всего несколько раз — в классических интерьерах, где используются ценные породы дерева. Древесина начинает смотреться глубже и богаче. Пример реализован через VrayBlendMtl

Reflect | White color Before
Reflect | Colorful image After


   Другой случай — ткани. Новички наивно полагают что ткань не имеет отражений, опытные, в большинстве случаев игнорируют и делают ткань без отражений вообще. В 75% случаев это действительно можно игнорировать, так как уровень шероховатости и ворсистости у тканей достаточно высокий и отражения размываются в ноль. Но есть такие ткани как шелк и синтетические ткани со схожими свойствами, где явственно видно что они имеют цветное отражение.
   Через VrayMtl шелковистую поверхность "по-честному" не реализовать. Эффект шелковистости обусловлен мелкой структурой плетения, что дает особенную анизотропию, которую не реализовать стандартными средствами. В сети распространено решение для имитации шелковистости на базе карты Falloff, добавленной в слот Diffuse — необходимо выбрать базовый цвет и подобрать цвет блика, который будет имитировать отражение.

fake Silk | Shader Before
Fake Silk | Settings After


   Очевидно что это решение не всегда может "выстрелить" и не всегда может выглядеть убедительно, так как оно не взаимодействует с окружением, т.е. честных отражений и бликов, при таком решении, у вас не будет. У меня есть наработка — универсальный шейдер для всего спектра тканей, как шелковистых, так и откровенно матовых, который еще находится в стадии "обкатки", но он дает вполне удовлетворительные результаты. Решение основано на аналогичной карте Falloff, но использую я её в слоте Reflect, а значит шейдер взаимодействует с окружением и дает более корректные результаты. Пока я не готов "делиться" настройками данного шейдера, поскольку он еще не прошел обкатку на большом числе проектов.

fake Silk | Shader Before
Real Silk | Shader After


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

Reflect | White color Before
Reflect | "Red" color After

Black & White Reflect Before
Colorful reflect After


    Важно! При использовании "цветного" отражения у неметаллов необходимо переключить режим опции Preserve energy в Monochrome (опция Preserve energy находиться в панели Option)

 Матовые отражения.


   Для металлов, управление "матовостью", реализуется через изменение параметра RGlossiness. Для неметаллов возможностей чуть побольше:

— Изменение параметра RGlossiness
— Понижение яркости параметра Reflect

   Я рекомендую настраивать матовую поверхность в том порядке, что обозначил выше. Сперва крутим RGlossiness, только потом, если результат не устраивает, понижаем яркость параметра Reflect. Более подробно о работе с параметром RGlossiness я буду рассказывать в другой статье. В двух словах скажу что, после того как в V-ray реализовали опцию Glossy Fresnel (опция Glossy Fresnel находиться в панели Option), острая необходимость понижать яркость параметра Reflect отпала. Опция Glossy Fresnel автоматически понижает яркость параметра Reflect в зависимости от значения параметра RGlossiness.
   Как это объясняется?
   Сначала немного теории и схем для понимания как строятся отражения по закону Френеля. Упрощенно работу закона Френеля, в нашей ситуации, можно представить градиентом от черного к белому. На сферическом объекте этот градиент будет распределяться от центра объекта к его краям. В центре сферы сила отражений равна нулю, к краям сферы отражающая способность материала увеличивается до ста процентов. Параметр IOR определяет длину градиента — чем выше значение IOR тем короче будет градиент. На схеме условно показано как работает закон Френеля и как меняется "градиент отражения" при разных значениях IOR.



   Но это решение справедливо для идеальных сред, где не учтено влияние микрошероховатостей (microfacets), то есть предполагается что поверхность идеально ровная. В реальности таких поверхностей не очень много, большинство поверхностей имеют микрошероховатости сила которых задается параметром RGlossiness. Если мы очень сильно увеличим поверхность материала с шероховатостями то увидим "горы". Склоны этих гор будут обращены к нашей камере (взгляду) под углом отличным от угла на макроуровне, а значит и сила отражения должна спадать по-другому. Долгое время этот "конфликт" микро и макро уровней не учитывался и приходилось в "ручном" режиме понижать яркость параметра Reflect, что бы получить достоверные результаты.
   В версии V-ray 3.6 появилась опция Glossy Fresnel, которая учитывает влияние отражений микроуровня на отражения макроуровня. Теперь отражающая способность материала зависит от значения параметра RGlossiness. Реализовано это таким образом — чем ниже значение параметра RGlossiness тем темней становится градиент отражения, т.е. белый становиться серым, поскольку белый цвет отражений на макроуровне начинает разбавляться черным цветом с микроуровня. На схемене ниже — изменение "градиента отражения" и проценты показаны условно, только для понимания как работает опция Glossy Fresnel и как она влияет на силу отражения.

Glossy Fresnel | OFF Before
Glossy Fresnel | ON After


   На примере ниже, показана разница между одним и тем же шейдером при включенной и отключенной опции Glossy Fresnel. Как отмечает Christopher Nichols (Director of Chaos Group Labs) при включенной опции Glossy Fresnel отражения значительно тускнеют, но данная опция дает более точные (физически корректные), результаты если сопоставлять шейдер и материал в реальности.

Glossy Fresnel | OFF Before
Glossy Fresnel | ON After


   Важно! Эта опция привязана к параметру Fresnel reflection и будет работать если этот параметр активирован. По этой причине я отказался использовать процедурную карту VRayFakeFresnelTex, потому что для её корректной работы необходимо отключать Fresnel reflection
   На этом остановлюсь и подведу итоги этой части. Параметр Reflect у неметаллов, в частных случаях, может быть отличным от белого цвета:
— Эффект применения поляризационного фильтра
— Эффект "просадки" отражения
— Цветные отражения у древесины и тканей
— Пониженная яркость отражений у матовых поверхностей - опция Glossy Fresnel

   Конец второй части...

PS: Статья не претендует на истину в последней инстанции, а только лишь приватные умозаключения, практикующего визуализатора. Третья часть, заключительная, будет посвящена разбору дополнительных опций, связанных с работой параметра Reflect.

С уважением, Павел Ушаков