Меню

3ds max отражение света



Иллюстрированный самоучитель по 3D Studio Max 6

Отражение и преломление

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

Когда свет отражается от поверхности объекта, он частично приобретает цвет объекта. Чем больше света попадает с объекта на объект, тем сложнее становится информация о цвете отраженных лучей, которые, в свою очередь, снова освещают объекты.

Отражения получаются, когда изображение, содержащее цветовую информацию, достигает глаз зрителя с помощью лучей света, исходящих от отражающих поверхностей объекта. Можно считать отражение историей изменения лучей света. Потом эта история преподносится в виде изображения (рис. 14.63).


Рис. 14.63. Изображение Тадж Махала отражается картой Flat Mirror

Программы трехмерной графики создают отражения, моделируя природные процессы взаимодействия света и объектов. Чтобы создать отражения в 3ds max, нужно сделать три вещи:

  • назначить для объекта отражающий (reflective) материал;
  • окружить объект другими объектами или картой внешней среды;
  • осветить сцену, так чтобы отражения света попадали в поле зрения.

Отражающие материалы могут быть созданы путем добавления к стандартным материалам текстуры Reflect/Refract (Отражение/преломление), текстуры Raytrace (Трассировка), карты Flat Mirror (Плоское зеркало) или использования отражающей способности трассируемого (raytrace) материала.

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

Преломление – это изменение направления световых лучей при прохождении сквозь прозрачные объекты. Создать эффекты преломления можно с помощью карты Reflect/Refract либо карты типа Raytrace. Второй способ обеспечивает лучшие результаты и более удобное управление (рис. 14.64).


Рис. 14.64. Учебная сцена использует наложение преломляющих карт для изображения воды и стекла

Источник

3ds max отражение света

Опубликовано 09.09.2017 в 00:44. Автор Станислав Гадельшин

Если видео ниже не отображается, отключите блокировку рекламы на этом сайте и обновите страницу. Все уроки тут встраиваются с Youtube и почему-то блокировщики считают их рекламой.

В этом уроке разберем, какие есть свойства в блоке Reflection, как настраивать параметры Fresnel IOR и Glossiness в 3ds Max (Corona renderer).

Это один из серии уроков, посвященный настройке материалов. Если вы только начинаете изучать 3ds Max, то для избежания путаницы просматривайте уроки именно в том порядке, в котором они идут ниже: — Настройка материалов в 3ds Max (введение); — Diffuse color (диффузный цвет); — Как работают свойства материалов в 3ds Max; — Reflection (вы здесь); — Refraction (преломления);

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

Для начала давайте посмотрим, какие свойства в блоке Reflection есть в принципе (на скринах ниже Corona Renderer 1.6.1):

Как видите, опций не так уж и много: — Level (уровень) — Fresnel IOR (коэф. преломлений по Френелю) — Color (цвет) — Glossiness (глянцеватость) — Anisotropy (анизотропия, то есть вытягивание отражений) — Rotation (поворот отражений)

Reflection Level и Color

Как работают параметры level и color, я подробно разбирал в этом уроке.

Fresnel IOR (index of refraction)

Fresnel IOR — оно же коэффициент отражений по Френелю (в миру говорят просто — отражения по Френелю). Это свойство, которое имеют все предметы в мире.

Суть эффекта заключается в том, что чем больше угол, под которым смотрим на предмет, тем слабее отражения. Фото ниже это наглядно иллюстрирует:

А вот так этот эффект выглядит в 3ds Max. В примере ниже на всех чайниках в блоке Reflection level=1, color (rgb 255, 255, 255):

Как определить, какие отражения по Френелю задавать для различных материалов? — исключительно экспериментальным путем.

Но есть определенные значения, от которых можно отталкиваться при настройке материалов различных типов. В частности, есть существенная разница между неметаллами (Fresnel IOR от 1 до 10) и металлами (Fresnel IOR от 20 до 100). Значение 999 в Corona Renderer отключает эффект отражений по Френелю.

Дальше в статье будет таблица с примерами. А перед этим обязательно нужно изучить еще одно свойство — Glossiness.

Glossiness

Glossiness — параметр, отвечающий за то, насколько глянцевым будет материал. Изменяется от 0 до 1. При единице отражения совершенно не искажаются. Чем ближе к нулю, тем более размазанным (матированным) становится отражение.

Если захотите поумничать перед друзьями, то можете объяснить этот эффект так: когда луч света падает на поверхность и отражается под тем же углом — то такая поверхность имеет максимальную глянцеватость. Например, зеркало. Мы видим отражения в нем без каких-либо искажений.

Читайте также:  Как изменить свет прожектора

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

Давайте посмотрим, как этот эффект смотрится в 3ds Max. В примере ниже на всех чайниках в блоке Reflection level=1, color (rgb 255, 255, 255), Fresnel IOR = 1,52:

Примеры настройки Fresnel IOR и Glossiness в различных материалах (Corona renderer)

Забегая вперед, хочу вас предупредить, чтобы вы только оттталкивались от данных значений при создании своих материалов, а финальные значения подбирали по ситуации и результатам своих пререндеров.

В примерах ниже использовалась Corona renderer 1.6.1 и 3ds Max 2017:

Fresnel IOR / Glossiness

Важные моменты

Если вы уже искали ответы на вопросы о том, какие значения Fresnel IOR и Glossiness надо задавать для различных материалов в 3ds Max, то наверняка обратили внимание, что авторы статей часто не сходятся в значениях для одних и тех же материалов. В этом нет ничего удивительного.

Дело в том, что разные движки (Corona renderer, VRay и т.д.) используют немного разные подходы при просчете. И те настройки, которые, допустим, в Вирее дадут отличный результат, в той же Короне будут смотреться в разы хуже. И наоборот.

Более того, даже в разных версиях той же Короны одни и те же настройки материалов порой отличаются довольно сильно!

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

Также нужно понимать, что когда вы настраиваете материалы, которые состоят из нескольких слоев (дерево, покрытое лаком, ржавый металл, наливной пол и т.п.), то параметры отражений надо настраивать для верхнего слоя.

А еще чем ниже значение Glossiness, тем дольше будет идти рендер. Утверждение актуально и для VRay (во всяком случае для версий не старше 3.0).

Слишком многое непонятно? Тогда сначала посмотрите бесплатный курс по 3ds Max «С нуля до профи.Light».

И не забудьте поделиться этой статьей со своими друзьями, для которых этот материал актуален!

Источник

Дмитрий Амоти

Блог обо мне для меня

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

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

Reflection

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Египет это какая часть света

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

Reflection Glossiness

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

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

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

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

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

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

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

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

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

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

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

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

Max depth и Exit color

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

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

20 обычно не целесообразно.

  • 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 (Воздействие на каналы) используются только в некоторых очень специфических случаях (больше относится к оптимизации сцены, нежели чем к созданию материалов).

Читайте также:  Головной свет или ближний свет

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

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

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

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

Anisotropy

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

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

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

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

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

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

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

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

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

Свиток Options

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

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

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

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

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

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

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

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

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

Источник