VRay – тени и прозрачность
Привет всем читателям блога Olston3D! Это очередной урок Сергея Романова. Многим будет полезно.
Многие из вас, наверняка, задумывались над тем, как можно встроить 3D-объект в реальное изображение. Например в фотографию. Не смотря на то, что в интернете есть такого рода уроки, я покажу вам, как можно проделать подобный трюк, используя специальный материал VRay и его тени и прозрачность.
Весь фокус заключается в том, что тени от трёхмерного объекта должны проецироваться на саму фотографию, то есть на бэкграунд. Это хорошо видно на картинке выше. Так как же это сделать, если нам известно, что тень отбрасывается только на поверхность.
Сегодня я вам покажу легкий способ отрендерить модель с тенью, но с прозрачной поверхностью.
Для данного урока вам понадобятся: 3ds Max (у меня версия 2014) и VRay (у меня версия 3,0, но можно и 2,0)
1. В программе 3ds Max создаем всеми любимый ЧАЙНИК (Teapot).
Параметры для чайника у меня получились следующие:
2. Создаем под чайником Plane (удобнее это делать в окне вида Top)
Параметры объекта Plane следующие:
ДАЛЕЕ СОЗДАДИМ НЕОБХОДИМЫЕ МАТЕРИАЛЫ:
3. Первым у нас будет стандартный Виреевский материал VrayMtl, который мы применим к чайнику.
Создаем материал:
Изменяем Diffuse Color (по моей задумке он должен быть красный).
Также изменим Reflection Сolor (Reflect). Сделаем его почти белым, чтобы отражения были сильнее (люблю, знаете ли, глянец). 🙂
Вот такой красивый материальчик должен у вас получиться:
ПРИМЕНЯЕМ ПОЛУЧИВШИЙСЯ МАТЕРИАЛ К ЧАЙНИКУ.
4. Скопируем, перетащив и переименовав наш материал, в любой свободный слот и назначим ему Diffuse белый, но не полностью белый, а вот такой:
По сути, у нас получился белый глянцевый материал.
5. Приступим к созданию материала для плейна. Как вы, наверное, уже догадались именно на нем будут отображаться тени, но как нам сделать, чтобы тени были видны, а плейн – нет!? Для этого мы будем использовать специальный виреевский материал VRayMtlWrapper.
Тут я хочу немного отвлечься от основного повествования и описать некоторые параметры этого интересного и самого незаметного материала:
Base material: Базовый материал, настройки которого будут влиять на тени: матовый, глянцевый, белый, серый, красный.. Считайте что тени будут падать именно на тот материал, который мы назначили плейну.
Далее идет раздел Additional surface properties (Дополнительные свойства поверхности).
Эти параметры показывают: принимать ли нашему материалу GI (Global Illumination) и просчитывать ли на нем каустику. Данные галки я бы советовал не трогать, во избежании проблем с просчетом нашей тени.
Раздел Matte properties отвечает за то, как данный материал будет замаскирован и как он будет отображаться на Альфа-канале.
Включенные чекбоксы Matte Surface (делает материал масочным, то есть покрывающим поверхность но не видимым) и «Matte for refl/refr» (делает его также масочным для отражений и преломлений).
Параметр Alpha contribution определяет как тени будут отображаться в Альфа-канале:
Значение 1. 0 – альфа-канал будет наследовать прозрачность Base material (то есть в нашем случае будет абсолютно не прозрачным)
Значение 0.0 – объект вообще не появится в Альфа-канале.
Значение -1.0 – прозрачность объекта (в данном случае тени) будет вычитаться из альфа-канала, и тень у нас получится, при выделении альфы с необходимой прозрачностью! (НАШ ВАРИАНТ)
Чекбокс Shadows, как не трудно догадаться, включает тени.
Affect alpha – влияние на Альфа-канал. Отображение на Альфа-канале, если так понятнее будет.
Также тут можно подправить цвет тени и ее насыщенность (Color, Brightness)
Reflection amount (Сила отражений) делает видимыми отражения от BASE MATERIAL. Это работает только если в качестве базового использован материал VRayMtl
Refraction amount (Сила преломлений) делает видимыми преломления в BASE MATERIAL. Это работает только если в качестве базового использован материал VRayMtl
GI amount — Влияние GI — определяет количество GI-теней.
ВОТ ТАКИЕ У НАС ДОЛЖНЫ БЫТЬ ПАРАМЕТРЫ МАТЕРИАЛА VRayMtlWrapper.
Но в нем у нас нет самого главного – базового материала. Берем созданный нами белый базовый материал и перетаскиваем его как Instance на плашечку базового материала где написано None.
Вот что должно получиться:
ПРИМЕНЯЕМ ДАННЫЙ МАТЕРИАЛ К НАШЕМУ ПЛЕЙНУ.
6. Теперь нам надо создать источник света, который будет давать тень.
В качестве такого источника мы возьмем VrayLight – плоский виреевский источник света. Чтобы создать его идем во вкладку Create, выбираем там Lights. В выпадающем меню находим Vray. Ну и там VrayLight.
Создаем источник VrayLigh (плейн) в виде сверху.
Параметры источника света выставляем такие:
7. Поворачиваем объект света на 450 по оси Y и на 450 по оси X.
Поднимаем вверх и переносим назад и вправо:
Вот какие параметры получились у меня:
8. Устанавливаем цель данному источнику (ставим галочку в чекбокс Targeted в панели Parameters)
Как видим у нашего источника света появился «хоботок». 🙂
Перетаскиваем появившуюся цель к краю нашего чайника.
Координаты у меня получились следующие:
9. Создадим текстуру отражения, чтобы было видно что наш чайник глянцевый.
Для этого выбираем любой пустой слот в редакторе материалов, жмем Get Materials/VrayHDRI
Во вкладке Bitmap выбираем Cumpus.jpg c ярким изображением улицы или города (ссылка на этот файл внизу статьи).
10. Не буду долго задерживаться на настройках рендринга, скажу лишь что данную карту нам надо скопировать как Instance в Reflection/Refraction Environment во вкладке рендринга VRay.
11. Рендерим и видим результат:
12. Сохраняем изображение как TIFF с Альфа-каналом:
13. Запускаем Photoshop и открываем в нем сохраненный файл. В палитре «CHANNELS» видим наш Альфа-канал:
Что же мы можем с его помощью сделать? Все просто! Мы можем быстро отделить наш объект от фона.
14. Кликаем по Альфа-каналу с зажатой клавишей Ctrl и Альфа-канал превращается в выделение.
15. Переходим в палитру Layers и делаем маску по выделению:
При этом ваш слой Background превращается в слой типа Layer с маской:
Теперь фон замаскирован, но тень осталась.
Теперь мы можем делать с данным изображением все, что захотим. Накладывать его на другие фотографии или класть на любые фоны. Фотография ОТРЕНДЕРИЛАСЬ С АЛЬФА-КАНАЛОМ ПО ТЕНИ.
За сим разрешите откланяться до следующего урока!
Материалы в 3D Max | Soohar
Здравствуйте читатели сайта Soohar.ru. В уроке Material Editor из курса Уроков 3D Max для начинающих вы вкратце познакомились с модулем, который позволяет гибко работать с материалами в 3D Max. В этом уроке вы узнаете, что такое материалы в 3D Max, их свойствах, и о том, каких видов они бывают.
Общие сведения
B 3D, как и в реальной жизни, каждый объект обладает своими определенными свойствами. Например, мы хорошо можем отличить дерево от металла, потому что их свойства совершенно разные. У них разная рельефность, преломление, текстура, диффузный цвет, глянцевитость, отражение и тд. В 3D Max определенные свойства хранятся в материале. Если сказать проще то материал это просто модуль с определенными свойствами, которые позволяют настраивать внешний вид объекта.
Именно такие свойства как текстура, блики, прозрачность, преломление, рельефность и самосвечение — делают поверхность модели реалистичной. Но как настроить эти свойства спросите вы? Для этого в 3D Max включен компонент Material Editor.
Откройте Material Editor нажав на клавишу <M>. Обратите внимание на то, что все ячейки содержат мaтериал типа Standard(Стандартный). Ниже ячеек находятся свойства, которые удобно разбиты по вкладкам. Свитки, и свойства будут меняться, в зависимости от того, какой матеpиал используется:
Чуть ниже мы разберем свойства и свитки.
Типы материалов в 3D Max
Основным используемым материалом является тип Standard (Стандартный). Это базовый тип, который служит основой для создания наиболее сложных и натуральных материалов. Он включает в себя такие характеристики как диффузный рассеивающий цвет, отражение, свечение прозрачность, блеск и тд. Помимо этого типа Material Editor содержит еще 15 материалов, 5 из которых являются простыми и 10 составными материалами.
Простые:
- Standart (стандартный) – часто используется для текстурирования большинства объектов.
- Architectural (Архитектурный) – появился, начиная с шестой версии программы, обладает реальными физическими свойствами и хорошо оптимизирован для Mental Ray. Включает в себя предустановленные настройки свойств некоторых объектов (стекло, кирпич, дерево и тд). Хорошо подходит для архитектурных проектов и где для освещения используются фотометрическое освещение.
- Ink ‘n Paint (Обводка и заливка) — служит для создания имитации рисованного кистью или пером объекта.
- Matte / Shadow (Матовый/Затеняемый) — его свойства позволяют настроить объект так, что бы он воспроизводил на своей поверхности изображение фона сцены.
- Raytrace (Трассировка) — по свойствам похож на тип Stamdard но для создания отражения и преломления используется трассировка лучей. При этом отслеживаются пути прохождения отдельных световых лучей от источника света до объектива камеры.
Составные:
- Advanced Lighting Override (Освещающий) – содержит свойства, которые управляют рассеиваемым светом
- Blend (Смешиваемый) – Используется для смешивания двух материалов. Параметр Mask (Маска) настраивает смешивание. Смешивание материалов задается с помощью. При нулевом значении параметра Mix Amount (Величина смешивания) отображаться будет только первый материал, при значении 100 – второй, при значении 50 оба и тд.
- Composite (Составной) — позволяет смешивать до десяти разных матeриалов, один из которых будет основным, а другие — вспомогательными. Вспомогательные можно смешивать с главным, добавлять и вычитать из него.
- Double Sided (Двухсторонний) — подходит для объектов, которые нужно текстурировать с передней и задней стороны модели.
- Morpher (Морфинг) — позволяет управлять раскрашиванием объекта в зависимости от его формы.
- Multi/Sub-Object (Многокомпанентный) — состоит из двух и более материалов, применяется в основном для текстурирования сложных объектов.
- Shell Material (Оболочка) – часто используется, если сцена содержит в себе большое количество объектов. Позволяет раскрашивать сами материалы, что бы их можно было различить в окне проекций. На рендер не влияет.
- Shellac (Шеллак) – многослойный, состоящий из нескольких материалoв: Base Material (Основной м) и Shellac MAterial (Шеллак). Степень прозрачности последнего меняется.
- Top/Bottom (Верх/Низ) — состоит из 2-х материалов, предназначенных для верхней и нижней части объекта. Его настройки позволяют менять уровень смешивания.
- XRef Material (Ссылка) – позволяет создать материал с помощью ссылки на любой объект из другой сцены.
Стоит отметить, что типы материалов меняются в зависимости от того, какой визуализатор выбран. По умолчанию выбран Scanline Renderer. Если выбрать Mental Ray или V-Ray, то список пополнится новыми материалами.
Как выбрать и присвоить материал объекту
Все вышеперечисленные типы мaтериалов расположены в окне Material/Map Browser. Для того что бы его открыть нажмите по кнопке с названием матеpиала, в нашем случае это Standard:
После чего перед вами откроется Material/Map Browser:
Присвоить матeриал 3D модели можно несколькими способами. Первый способ: нужно выбрать объект и нажать по кнопке Assign Material Selection:
А второй способ: ячейку с материалом можно просто перетащить на объект:
Результат будет совершенно одинаковым.
Далее подробнее разберем свойства матеpиaла. Стоит сразу отметить что свойства каждого мaтeриала отличаются друг от друга. Например параметры матеpиaла типа Standard будут отличаться от типа Architectural, но в большинстве случаев их свойства идентичны.
Настройки свойств матeриала
Мы подошли к той части, когда можно разобрать настройки и свойства свитков. B качестве примера мы рассмотрим тип Standard:
Shader Basic Parameters
В этом свитке можно выбрать какой шейдер использовать для затенения. Шейдер это определенный способ затенения, и от выбора шейдера будет зависеть конечный результат. Шейдеры играют огромную роль и в зависимости от ситуации лучше всего использовать определенный шeйдер. По умолчанию выбран шейдер Blinn (По Блинну). Помимо него в 3D Max включено еще семь разных шейдеров:
Anisotropic (Анизотропный) — этот шейдеp позволяет создавать вытянутые овальные и несимметричные блики. Такой тип хорошо подойдет для стекла, волос или металла:
Blinn (По Блинну) — создает округлые более менее реалистичные блики. Отлично подойдет для имитации фосфора, пластика, кожи, стекла, полированных поверхностей и тд:
Metal (Металл) – создает реалистичную модель металлической поверхности. Используя этот шейдeр вся поверхность модели будет выглядеть затененной, а блик останется белым. Идеально подходит для стали и стекла:
Multi-Layer(Многослойный) — по свойствам похож на Anisotropic (Анизотропный), но с той лишь разницей, что этот позволяет создавать еще два дополнительных блика:
Oren -Nayar –Blinn (По — Оурену — Найру- Блину) по свойствам похож на Blinn, но позволяет управлять яркостью диффузного отражения. Хорошо подходит для имитации шероховатых поверхностей например глины, ткани, дерева:
Phong (По Фонгу)– похож на Blinn. Phong это первый шeйдер, который позволил создать блик на поверхности 3D материала. Подходит для создания пластиковой и лакированной поверхностей:
Strauss (По Штраусу) упрощенный вариант шейдeра Metall. В нем меньше настроек, а подходит для создания металлической поверхности. Но проще не значит хуже, так как в некоторых случаях он лучше потойдет для затенения нежели Metall:
Translucent Shader (Просвечивающая раскраска) — по свойствам похож на Blinn, но имеет уникальное свойство, которого нет не в одном из вышеперечисленных шейдеров. Он позволяет свету не только проходить сквозь полупрозрачный объект, но и рассеивает его под поверхностью. Другими словами можно добиться эффекта просвечивания объекта. Хорошо подойдет для имитации штор, которые освещены из окна матового стекла и тд.
Каждый из перечисленных шейдеров имеет свои собственные настройки, для этого урока мы будем использовать шейдер Blinn.
Помимо выбора шейдера в этой вкладке расположены четыре флажка:
Wire (Каркас) придает каркасный вид (Превращает объект в сетку). Толщину каркаса можно изменить в свитке Extended Parameters:
Параметр 2-Sided (Двусторонний) позволяет применить мaтериал к задней стороне объекта:
Face Map (Карта грани) позволяет проецировать карту или текстуру на каждую грань (полигон) объекта. На рисунке ниже показан пример. B первом случае Face Map и карта Checker проецируется на сферу полностью. Во втором случае Face Map и карта проецируется на каждую отдельную грать:
Faceded (Огранка) отключает сглаживание ребер:
Blinn Basic Parameters
Свойства свитка Blinn Basic Parameters уже описывались в позапрошлом уроке. Но мы все равно разберем его снова, что бы урок получился для вас максимально информативным.
- Ambient — цвет для тени
- Diffuse — основной цвет для поверхности
- Specular — цвет бликов на объекте
Цвета для Ambient и Diffuse зависят друг от друга. Это потому что по умолчанию включен замок, который находится слева от этих параметров. тключите его и тогда вы сможете выбирать разный цвет для тени и для поверхности.
- Self — Illuminaton — самосвечение объекта изнутри. Для этого параметра можно выбрать цвет или текстуру, а так же установить силу самосвечения.
- Opacity — позволяет изменить прозрачность объекта. с помощью процентной шкалы. Например 100% — непрозрачный, 50% полупрозрачный и 0% полностью прозрачный и не видимый.
- Specular Level — помощью этого параметра можно управлять яркостью блика
- Glossiness — позволяет настроить размер блика
- Soften — позволяет настроить размытость границ блика
Extended Parameters
Здесь расположены три группы параметров: Advanced Transparency (Дополнительные настройки прозрачности), Wire (Настройки каркаса) и Reflection Dimming (Настройки затухания отражения). Ниже мы разберем все три группы по порядку.
- Advanced Transparency
Переключатель Faloff (Спад) позволяет изменить характер направления прозрачности. Например если установить положение в In, то прозрачность будет увеличиваться к центру объекта, а при включении Out прозрачность увеличится к краям объекта.
Именно параметр Amt определяет прозрачность внутренней или внешней границы объекта:
Правее расположены три типа прозрачности:
- Filter (Фильтр) — смешивает цвет фильтра с цветом поверхности
- Subtractive (Вычитающая) — вычитает пропущенный цвет и цвет объекта, который расположен позади
- Additive (Аддивная) — суммирует вышеописанные свойства
Немного ниже находится параметр Index of Refraction (Коэффициент преломления), который позволяет настраивать коэффициент величины преломления лучей света, проходящих через прозрачный объект.
Группа параметров Reflection Dimming (Ослабление зеркального отражения) управляет свойствами преломления света, проходящего через прозрачный объект.
- Apply (Применить) — включает ослабления блеска в тени.
- Dim Level (Уровень ослабления) — управляет степенью ослабления блеска в тени. Значение 0 — блеск отсутствует, значение 1 — параметр ослабление полностью отсутствует
- Refl. Level (Уровень отражения)- управляет степенью управления зеркального отражения вне тени
Группа настроек Wire позволяет управлять толщиной и размером сетки. Если включен параметр Wire в свитке Shader Basic Parameters, то благодаря полю Size можно изменить размер сетки:
SuperSampling
B этом свитке находится тип сглаживания SuperSampling, который позволяют увеличить внешний вид объектов при просчете сцены.
При визуализации сцены в районах, где цвет материала, переходит в цвет фона или другого объекта могут возникнуть артефакты. Именно этот тип сглаживания поможет придать матеpиалу хорошее качество в местах цветовых переходов. При использовании такого типа сглаживания качество конечного изображения улучшается, но при этом время просчета сцены увеличится. Давайте разберем настройки SuperSampling:
- Use Global Setting — использование глобальных параметров, которые настраиваются в свитке Default Skanline Renderer в окне Render
- Enable Local Supersampler — позволяет включить локальную настройку и один из алгоритмов сглаживания не зависящую от настроек окна Render
Maps
B этом часто используемом свитке можно присвоить карты/текстуры параметрам мaтериала. По умолчанию список составляет 24 раздела. Один раздел это один параметр. Поле Amount управляет степенью интенсивности карты. Свиток Maps меняется в зависимости от типа мaтериала и шейдера. Ниже описаны все параметры материaла Standard:
- Ambient Color — (Обтекаемый цвет/Цвет для тени) — позволяет назначить текстурную карту для тени, отбрасываемой от объекта. Рекомендуется использовать ту же текстурную карту, что и для параметра Diffuse Color
- Diffuse Color (Рассеянный цвет) — выбор текстурной карты для поверхности материала. Другими словами рассеянный цвет это покрытие объекта, и если, допустим, применить объекту текстуру бетона, то поверхность будет казаться бетонной.
- Specular Color (Зеркальный цвет) — позволяет применить текстуру или изменить цвет отражению
- Specular Level — позволяет управлять интенсивностью сияния при помощи Amount и карт. Рекомендуется использовать вместе с Glossiness
- Glossiness — позволяет определять области зеркального сияния. Благодаря текстурным картам можно уменьшать и увеличивать уровень зеркальности на поверхности. Например текстура с белыми областями будет отображать зеркальность, а черная текстура не будет отображать зеркальность
- Self — Illumination (Самосвечение) — позволяет определять области где объект будет светиться. Темные области на текстуре не дадут объекту светиться, а белые области позволят объекту светиться максимально
- Opacity (Непрозрачность) накладывая карту для этого параметра можно настроить его прозрачные и непрозрачные области. Темные участки текстуры сделают области объекта прозрачными, а белые участки непрозрачными
- Filter Color — позволяет придать прозрачным областям текстуру. Часто применяется для создания цветного стекла и подобных прозрачных объектов
- Bump (Рельефность) — часто используется для имитации детализированной поверхности за счет направления нормалей карты. Светлые области на карте отвечают за приподнятость участков, а темные отвечают за вдавленность участков
- Reflection (Отражение) — позволяет имитировать отражение при помощи текстуры
- Refraction (Преломление) имитирует преломление лучей света. При помощи карты можно создать эффект будто на предмет смотрят через прозрачный объект, например лед или стакан с водой
- Displacement (Смещение) сильно отличается от Bump, Displacement не просто имитирует неровности поверхности, а действительно воссоздает их при помощи процедурных карт. Темные участки карты вдавливают поверхность, а белые ее приподнимают.
Dynamic Properties
B свитке Dynamic Properties (Динамические свойства) находятся параметры, которые определяют свойства объекта связанного с утилитой Dynamics. (Поведение объекта при столкновениях). Свиток содержит три параметра:
- Bounce Coefficient (Коэффициент отскока) — позволяет настроить силу отскока объекта при столкновении. Чем больше значение тем больше отскоков
- Static Friction (Статическое трение) — управляет силой, которую необходимо приложить для сдвига объекта, чем больше значение, тем больше силы нужно приложить
- Sliding Friction (Трение скольжения) — настраивает силу, которая поддерживает трение движущегося объекта
mental ray Connection
Параметры этого свитка позволяют применить к материалу шейдеры, которые используются визуализатором Mental Ray. Здесь расположены четыре группы: Basic Shaders (Базовые шейдеры), Caustics and GI (Каустика и глобальное освещение), Extended Shaders (Дополнительные шейдеры) и Advanced Shaders (Сложные шейдеры). В группах находятся свойства, которые имитируются шейдерами:
- Surface (Поверхность) — основной цвет поверхности объекта
- Shadow (Тень) — выбор цвета для тени
- Photon (Фотон) свойство материала, которое позволяет многократно отражать световые лучи и воспринимать свет, который отражен от других объектов
- Photon Volume (Объемность фотонов) — параметры управления отражения внутри объекта
- Displacement (Смещение) — для смещения используется уже не текстурная карта, а шейдер
- Volume (Объем) — имитация рассеивания света в сцене, создавая иллюзию тумана
- Environment (Окружение) — имитация отражения и преломления материала от окружения
- Contour (Контур) — при рендеринге рисует контур вокруг объекта
- Light Map (Карта света) управляет распределением фотонов исходящими от источника света
На этом все. B одном из следующих уроков вы подробно узнаете, как работать с текстурными картами. Рекомендую подписаться на Rss ленту новостей, что бы всегда быть в курсе выхода новых уроков и новостей сайта.
V-Ray для 3ds max shading – журнал компьютерной графики Одеда Маоза Эрелла
Теоретически тень всех четких* преломляющих поверхностей должна быть рассчитана с использованием расчета преломляющей каустики , чтобы корректно отобразить эффект преломления линзы** , имеют цвет прозрачности, рассчитанный как объемное поглощение света через среду, чтобы правильно передать цвет для областей разной толщины, и имеют не только внешние отражения, но и внутренние отражения рассчитаны, чтобы правильно отобразить взаимодействие между светом и прозрачным телом.
Однако для тонких поверхностей одинаковой толщины, таких как остекление окон и ветровые стекла автомобилей, эти оптические эффекты могут быть воспроизведены гораздо более дешевыми (нефизическими) методами с минимальными потерями в качестве или внешнем виде конечного изображения, и даже имеют более простую настройку в большинство случаев.
По этой причине большинство популярных движков рендеринга имеют параметры объекта (сетки) и материала (шейдера), которые позволяют настроить способ рендеринга этих эффектов прозрачности.
В этой короткой статье мы рассмотрим различные методы рендеринга эффектов прозрачности, их обоснование и способ настройки этих параметров в разных движках рендеринга.
На сравнительных изображениях ниже (отрендеренных с помощью Cycles) изображения слева были отрендерены с физически правильными настройками стекла, 8192 семпла + шумоподавление,
А изображения справа были отрендерены с «плоскими» настройками прозрачности и 1024 семпла + шумоподавления.
> См. настройки шейдера ниже
Обратите внимание, что в то время как для статуи обезьяны быстрые настройки плоской прозрачности дают нереалистичный результат, модель оконного остекления очень мало теряет в своем внешнем виде с плоскими быстрыми настройками:
Распространенная интуитивная ошибка состоит в том, что прозрачные объекты не отбрасывают тени, а на самом деле отбрасывают. они не блокируют свет, они меняют его направление. свет преломляется через них , фокусируется в некоторых областях их окружения ( каустика ), но не может пройти через них напрямую, поэтому создается тень.
Хорошим примером этого может быть стеклянный шар, действующий как линза, фокусирующий свет в крошечной области и имеющий правильную эллиптическую тень. если мы скажем движку рендеринга просто позволить прямому свету проходить через объект, мы не получим правильного реалистичного результата, даже если свет окрашивается цветом прозрачности объекта.
Однако есть один случай, когда прямой свет просто проходит через объект и выглядит правильно, и экономит много вычислений, и это когда объект представляет собой тонкую поверхность постоянной толщины, например оконное остекление.
Таким образом, во многих популярных движках рендеринга при рендеринге неравномерного толстого твердого прозрачного тела, такого как стеклянная статуя или стакан, наполненный жидкостью, мы должны вопреки здравому смыслу установить объект или материал как непрозрачный для прямого света и позволить непрямой преломленный свет (каустика) создать правильный линзовый эффект (сфокусированные световые узоры в области тени)
> физически свет, проходящий через материальную среду, всегда преломляется , то есть непрямой свет . но для тонких поверхностей с одинаковой толщиной, таких как остекление, эффект линзирования незначителен, и им можно полностью пренебречь, позволяя свету проходить непосредственно через объект и визуализироваться как «прозрачная тень» .
Таким образом, общее правило расчета каустик (линзирование) по сравнению с отбрасыванием прозрачных теней (нефизических) состоит в том, что если прозрачный объект представляет собой твердое тело неправильной формы с различной толщиной, например, статуя или бутылка с жидкостью, его следует визуализировать. как непрозрачный для прямого света но с полностью рассчитанными каустиками т.е. преломленный непрямой свет.
Физически цвет прозрачности*** всегда создается объемным поглощением света, путешествующего в материальной среде. по мере того, как свет проходит дальше через материал, все больше и больше его энергии поглощается средой**** (преобразуется в тепло), поэтому чем толще объект, тем меньше света достигает его другой стороны, и он кажется темнее. это объемное поглощение света неодинаково для всех длин волн (цветов) света, поэтому кажется, что объект имеет цвет.
Например, обычное стекло поглощает красный и синий свет с большей скоростью, чем зеленый свет, и поэтому объекты, видимые через него, кажутся зеленоватыми. когда мы смотрим на тонкую сторону обычной поверхности остекления, мы видим более темный зеленый цвет, потому что мы видим свет, который прошел через большее количество стекла (через более толстый объем стекла) из-за преломления, изгибающего свет по длине поверхности. чай в стакане обычно выглядит темно-оранжево-коричневым, но если его пролить на пол, он «потеряет» свой цвет и станет прозрачным, как вода, потому что пролитый на пол, он слишком жидкий, чтобы поглощать значительное количество света и казаться иметь цвет.
Большинство движков рендеринга позволяют установить цвет прозрачности («преломление»/«пропускание») материала как в качестве «плоского» нефизического цвета фильтра, так и в виде физической скорости поглощения света RGB (иногда называемой цветом «тумана»). , который в некоторых случаях можно точнее настроить с помощью дополнительных параметров множителя или глубины.
Установка цвета прозрачности объекта с использованием физического поглощения (тумана) обычно требует дополнительной настройки, потому что в этом методе окончательный отображаемый цвет зависит не только от цвета, который мы установили в материале/шейдере, но также и от фактической толщины модели в реальном мире. *****
Как правило, цвет прозрачности толстых, твердых объектов неправильной формы (с различной толщиной) должен быть установлен как цвет скорости физического поглощения, а не как простой цвет фильтра, в противном случае толщина материала не повлияет на результирующий цвет. , и посмотрите неправильно.
Однако для тонких поверхностей одинаковой толщины, таких как оконное остекление, эффективнее настроить цвет прозрачности как «плоский» цвет фильтра, потому что это более удобно и предсказуемо для настройки и дает правильный результат.
Например, если нам нужно визуализировать поверхность архитектурного остекления, которая будет фильтровать ровно 50 процентов проходящего через нее света, гораздо проще настроить ее с помощью простого фильтра с прозрачностью 50% серого, потому что этот метод игнорирует модель стекла. толщина. Этот подход не является физическим, но для равномерной толщины поверхности остекления результат не имеет очевидных отличий от подхода физического объемного поглощения к той же задаче.
Не интуитивно думать, что поверхность воздуха сама по себе имеет отражения, если смотреть сквозь объем прозрачного материала, такого как вода или стекло.
Если смотреть из-под воды, поверхность воздуха над ней действует как зеркало при определенных углах, отражая объекты, находящиеся под водой. стеклянный шар, освещенный лампой, имеет очень четкий блик, который является отражением самого источника света (зеркальное отражение), но у него также есть внутренний блик, появляющийся внутри, где объем стекла встречается с объемом воздуха. мы легко можем «упустить» этот внутренний блик, потому что во многих случаях его внешний вид сходится с ярким сфокусированным светом за шаром, вызванным линзированием (преломляющая каустика). отчетливо блестящий внешний вид алмазов, например, очень сильно зависит от ярких внутренних отражений, узоры огранки алмазов специально разработаны для отражения большого процента света обратно к зрителю и выглядят блестящими, и если мы хотим создать реалистичную визуализацию алмазов, нам нужно будет не только установить правильный показатель преломления для материала, но и правильно смоделировать геометрическую форму алмаза, и, конечно же, настроить материал для визуализации как внешних («обычных»*****) отражения и внутренние отражения.
Вы, наверное, уже догадались, что я скажу дальше..
Для тонких поверхностей одинаковой толщины внутреннее отражение едва заметно, т. лобовых стекол и т.п., мы обычно можем отключить расчет внутренних отражений, чтобы сэкономить время рендеринга.
Сводная таблица упрощенных настроек:
Квартира (остекление) | Физический (нестандартный объем) | |
Тень | Прозрачный | Каустика |
Цвет | Фильтр | Объемное поглощение |
Отражения | Только внешний | Внешний и внутренний |
Пример шейдеров Cycles (Blender):
> Шейдер плоского остекления на самом деле более сложен для определения, поскольку он включает определение различных типов вычислений для разных типов трассируемых лучей (обман).
В целом, для лучей Shadow и Diffuse этот шейдер вычисляется как простой прозрачный шейдер, а не шейдер преломления, а при обращенном назад шейдер рассчитывается как чисто белый прозрачный вместо глянцевого, чтобы удалить внутренние отражения. .
> В то время как шейдер плоского остекления подключен только к входу Surface выходного материала, шейдер физического стекла также имеет узел BSDf Volume Absorbment , подключенный к входу Volume выходного узла материала.
> Обратите внимание, что простой материал Principled BSDF по умолчанию будет иметь плоскую прозрачность и физическую тень (каустику).
> Для расчета каустики необходимо включить параметр Refractive Caustics в Light Path > Caustics настройки в настройках рендеринга Cycles .
Пример v-ray Далее для 3DS Max Material Settings:
> в V-Ray для 3DS MAX (и Maya ). В зависимости от погоды тени будут фальшивыми прозрачными тенями, подходящими для остекления или (вкл.) или непрозрачными (выкл.), что является подходящей настройкой для каустики.
> Расчет каустики — это либо GI Caustics , который активируется по умолчанию в основных настройках GI, либо специальный расчет Caustics , который можно активировать также в настройках GI .
> Для плоского остекления цвет определяется как Цвет преломления , а для физического стекла Цвет преломления является чисто белым, а цвет стекла устанавливается как Цвет тумана .
Пример настроек Arnold для Maya:
> В Arnold 5 для Maya параметр Opaque в атрибутах узла формы Arnold должен быть снят для прозрачных теней и отмечен для непрозрачных теней, подходящих для каустики.
> Для рендеринга преломляющей каустики в Arnold для Maya необходимы дополнительные настройки.
> Если для атрибута «Глубина передачи» установлено значение 0, цвет передачи будет отображаться как цвет плоского фильтра, а когда значение атрибута «Глубина передачи» больше 0, цвет прозрачности будет рассчитываться как объемное поглощение, достигающее цвета передачи при заданную глубину.
Общие примечания:
> В Трасеры грубой силы , такие как Циклы и Arnold . Расчет Caustics на самом деле является Diffuse . это кажется нелогичным, но световой рисунок, появляющийся на поверхности стола в тени прозрачного стекла, на самом деле является частью явления диффузного отражения поверхности стола.
> то, что мы называем ‘ Diffuse Color’ в диэлектрик (неметаллы) на самом деле является упрощением поглощения света, рассеянного внутри объема объекта (SSS).
* Оптически все диэлектрические материалы (неметаллы) являются преломляющими, но не все из них также прозрачны, т. е. большинство из них на самом деле имеют в своем объеме микрочастицы или структуры, которые рассеивают и поглощают свет, проходящий через их, создавая эффекты, которые мы привыкли называть «Подповерхностное рассеяние» 9.0004 (SSS) и в более высоких плотностях «Диффузное отражение» .
** Линзирование — это термин, используемый для описания эффекта материальной среды, преломляющего свет, фокусирующего и рассеивающего его и, таким образом, действующего как линза.
*** На самом деле все цвета диэлектрических (неметаллических) материалов создаются с помощью Volumetric Absorbment .
**** Свет не только поглощается при прохождении через среду, но и рассеивается.
***** Эффекты объемного затенения обычно используют исходный масштаб модели (истинный масштаб сетки), поэтому, чтобы избежать неожиданных результатов, лучше всего, чтобы масштаб преобразования объекта был равен 1,0 (или 100%, в зависимости от аннотации программы)
Связанные посты:
> Циклы. V-Ray Underwater Rendering
Наложение теней и матов из V-Ray
Вы здесь: Главная » Блог » 3dsMax » Max Tips » Наложение теней и матов из V-Ray
Тени помогают размещать элементы компьютерной графики в мире. Буквально заземляя его в реальности. Рендерить их легко, но для большего контроля нам нужно отделить теневой слой для композитинга. Создать их в 3dsMax несложно, и вот как настроить V-Ray для разделения необходимых проходов.
В этой статье я не буду подробно описывать соответствие камер реальному миру. Вкратце нам нужно:-
- Наш CG персонаж
- Прокси-сетка, представляющая землю в реальном мире.
- Камера V-Ray, соответствующая объективу и пленочной задней панели серийной камеры .
- Соответствующие источники света V-Ray
Мы используем наземный прокси для получения теней, отбрасываемых нашим компьютерным персонажем. Это будет слой с тенью, который мы вставляем в финальный снимок.
VRayMtlWrapper — отличный инструмент для создания проходов теней и масок. Есть 4 настройки, которые вам нужно знать.
- Матовая поверхность
- Альфа-вклад
- Тени
- Влияет на альфа-канал
Матовая поверхность
Робот как матовая поверхность
Делает материал матовым, что показывает фон, а не основной материал, если смотреть прямо. Матовые объекты можно использовать для перекрытия или сокрытия других объектов в сцене.
Альфа-вклад
Робот с альфа-вкладом 1
Робот с альфа-вкладом 0
Робот с Альфа-вкладом -1
Альфа-вклад позволяет вам управлять тем, как объект будет отображаться в альфа-канале. Значение:
- 1.0 означает, что объект будет нормально отображаться в альфа-канале.
- 0.0 означает, что объект вообще не будет присутствовать в альфа-канале.
- -1.0 инвертирует альфа-канал объекта.
Примечание:
- Этот параметр материала не требует, чтобы объект был матовым объектом.
- Матовый объект не изменяет внешний вид альфа-канала, если не настроен его вклад в альфа-канал.
Shadows
Ground plane как Mattesurface с тенями на
включите этот параметр, чтобы сделать тени видимыми на матовой поверхности.
Affect Alpha
Включите этот параметр, чтобы тени влияли на вклад альфа матовой поверхности. Области в идеальной тени будут иметь белую альфу, в то время как полностью лишенные теней области будут иметь черную альфу.
заземлить как Mattesurface с Alpha_Contribution -1
Подробнее см. в справочной документации VRay
Настроить матовый материал
- Использовать материал VRayMtlWrapper
- Установите для параметра «Базовый материал» значение «VRayMlt».
- включить «Матовая поверхность»
- изменение «Альфа вклад в» -1.0.
- ОТКЛЮЧИТЬ «Тени»
- ОТКЛЮЧИТЬ «Влиять на альфа-канал»
Настройка материала матовой тени
- Использование материала VRayMtlWrapper
- Установите для параметра «Базовый материал» значение «VRayMlt».