СТР. 1 2
Урок по практическому использованию модели подслойного рассеивания света (SSS) в mental ray. Проводится на базе 3D Max. Желательно использовать 3D Max 2009 и выше. Будет разобран материал SSS Physical Material (mi) и возможности его применения, создание материалов с эффектом SSS и общие принципы их настройки, предложены табличные данные с коэффициентами.
Вступление
В компьютерной графике наиболее широко используется модель двунаправленной функции распределения рассеивания (BSDF), которая включает поверхностное рассеивание (BRDF) и сильно упрощенное подповерхностное (BTDF). Такая модель не совсем корректно учитывает прохождение света в толще материала, но вполне подходит для быстрой имитации эффекта.
В 2001 году Henrik Wann Jensen, представил новую модель освещения BSSRDF ( двунаправленная функция распределения поверхностного рассеивания ). Суть новой модели заключается в том, что падающий на поверхность свет может выйти из модели претерпев преломление (однократное рассеивание) и может выйти из модели со смещением претерпев ряд переотражений и отклонений.
Такая модель из-за своей ресурсоемкости пока применяется довольно редко, в основном для точной передачи оптических свойств объекта переднего плана, но производительность техники растет и актуальность использования эффекта тоже возрастает.
В mental ray (рассматриваем с точки зрения работы в 3D MAX ) функция BSSRDF реализована в группе материаловSSS ( Subsurface Scattering in Surfaces ) которые можно разделить на группу нефизических (SSS Fast…) и физического SSS Physical Material (mi).
Первые обсчитываются быстрее, но менее точны, а второй максимально физически корректен. Он и будет рассмотрен.
Наглядно продемонстрирую эффект, который мы будем добиваться в нашем уроке:
Посмотрите на место падения луча на гранит:
Кроме ярко-освещенной точки никаких других световых эффектов не наблюдаем, про такой материал можно сказать что у него нет подслойного рассеивания в том виде, который бы нас интересовал и создать такой материал труда не составит.
Теперь фото падения луча на мрамор и кальцит:
Теперь явно видно прохождение света в объеме минерала с отклонением от изначального направления. Это и есть эффект подслойного рассеивания и этот эффект будет создан с помощью SSS Physical Material mi.
Physical Material mi
Свойства материала SSS Physical Material удобнее будет понять на практическом примере. Смоделируем светильник, у которого источник света будет геометрически изолирован, а свет будет выходить наружу по световодам из материала на основе SSS.
Светильник типа ночник:
Источник света помещен в герметично закрытый корпус, из которого выходят четыре световода (рожки), которые будут выводить свет наружу, рожки сделаем загнутыми, чтобы максимально осложнить распространение света.
На корпус назначаем любой непрозрачный материал. А рожкам-световодам SSS Physical Material (mi)
Первый слот Material – сюда назначается материал который будет отвечать за функцию BRDF, проще говоря, внешней оболочки материала, на которую потом будет добавляться эффект SSS.
Я назначил в этот слот стекло, так как световоды в основе своей прозрачны.
Использовался специализированный шейдер стекла Glass(lume).
Если нет шейдера подходящего для конкретной ситуации, то можно создать материал на основе любого другого материала и установить его сюда через Material to Shader.
Transmission – фильтр и яркость для SSS эффекта. Значение 0,5 по всем трем составляющим цветов не оказывает влияние на результат , уменьшение или увеличение веса составляющих делает эффект ярче или темнее, но в любом случае на рассеивание и поглощение не влияет.
Index of refraction – коф преломления материала.
Ближе к концу урока я дам табличку со значениями четырех основных параметров подслойного рассеивания для самых распространенных материалов
Absord. Coeff - Коэффициент поглощения света, величина обратно пропорциональная пробегу фотона в толще материала до полного поглощения. Чем меньше величина, тем дальше свет проникнет в материал.
Scatter. Coeff. – Коэффициент рассеивания света в материале. Чем больше значение, тем сильнее материал рассеивает свет внутри себя.
Нужно не путать эти понятия, поглощение снижает интенсивность света с расстоянием, а рассеивание, не снижая интенсивности распределяет свет внутри объема материала, при этом подсвечивание объекта изнутри возрастает. Оба коэффициента даны в трех значениях для каждой составляющей цвета – R G B.
Scattering anisotropy – Анизотропия рассеивания, принимает значения от -1 до 1. При положительных значениях рассеивание происходит вперед ( по ходу движения фотона), то есть у фотона больше шансов выйти с противоположной освещенной стороне материала и «подсветить» теневую сторону объекта (Рис №1). При отрицательных значениях происходит обратное рассеивание, то есть дополнительно подсветиться область рядом с местом падения света(Рис №2). Анизотропия равная нулю, равномерно распределит рассеивание во все стороны (Рис №3)
Далее в настройке материала идут вспомогательные параметры, о них позже, а пока заставим работать ночник.
Для работы физического SSS материала необходимо включить непрямое освещение, удобнее использовать Каустику.
- В свойствах объекта (рожки) ставим галку для участия в расчете каустики
- Включаем каустику в настройках рендера
Все параметры, кроме слота для материала оставляем без изменения, так как предлагается редактором по-умолчанию. Но для наглядности картины уменьшим коэф. рассеивания до 0,01
Свет от источника света (ИС) я умышленно сделал светло-голубым.
Можно делать первую визуализацию
Уже сейчас видна работа материала подслойного рассеивания, рожки проводят свет, но пока не в той мере, как хотелось бы.
Очевидно, что нужно уменьшить коэф поглощения. Ставим минимальное значение (Absord. Coeff = 0.001 0.001 0.001 ) это означает что свет в полном спектре будет распространяться с минимальным поглощением:
Свет закономерно распространился дальше.
Сравните изменение цвета излучаемого света. Во втором случае у нас явно начала пропадать синяя составляющая спектра. Происходит это из-за того, что учитывается поглощение света по составляющим цветам – синий поглощается больше, красный меньше. Чем больше пройденное расстояние в материале, тем это больше заметно. При настройке материала, нужно учитывать этот факт и корректировать значения с учетом цвета.
Продолжим улучшать результат.
Поглощение сделали минимальным, а свет пока не хочет бежать по всему объему рожек. Все дело в том, что рожки светильника кривые, и чтобы заставить свет «завернуть за угол» нужно повысить его рассеивание в материале. Увеличиваем параметр рассеивания до 0,5 (Scatter. Coeff = 0.5 0.5 0.5 )
Почти совсем хорошо, но слишком хорошо видна граница между светом по линии распространения и боковому рассеиванию.
Посмотрите на коэф анизотропии, по-умолчанию он равен 0,8, грубо говоря 80% света проходит в материале прямо и только 20% отклоняется «за угол». Очевидно что нужно уменьшить анизотропию рассеивания, я уменьшил до 0,4
В результате получился материал с минимальным поглощением света и сильным равномерным рассеиванием.
После небольшой доводки получилось следующее:
Коэф. Поглощения для зеленой составляющей цвета Absord. Coeff (G) выше, чем для красной и синей составляющей, сделано это для поглощения зеленого и пропускания фиолетового спектра.
В итоге:
Освещение стенки под светильником и окружающих предметов в идеале происходит за счет фотонов и за счет Final Gather. Но в старых версиях 3d max есть определенные проблемы с настройкой фотонов непрямого освещения (неустранимый цветной шум), в этом случае необходимо отключать прием каустики на предметах вблизи работы sss материала. Проблема в max 2010 устранена.
скачать сцену для 3d max 9 и выше.
СТР. 1 2