3dtuts

Локальная модель освещенности

Изображение формируется в результате отражения падающего на поверхность объектов света, интенсивность и цвет которого необходимо рассчитать. Фоновая освещенность Локальная модель освещенности учитывает неявное Ambient-освещение, его еще называют фоновым (Background). Необходимость учета Ambient-освещения связана с тем, что его вклад может быть достаточно велик – до 50% от общей освещенности. В локальной модели освещенности считается, что фоновое освещение задает цвет (и его интенсивность) объекта в отсутствии явных источников света или в тени. Интенсивность такого освещения постоянна и равномерно распределена во всем пространстве, расчет его отражения поверхностью выполняется по формуле:

Iamb = ka·Ia,

где Iamb — интенсивность отраженного Ambient-освещения, ka — коэффициент, характеризующий отражающие свойства поверхности для Ambient-освещения (его значение находится в пределах от 0 до 1), Ia — исходная интенсивность Ambient — освещения, падающего на поверхность. Увидеть этот тип освещения в «чистом виде» в 3ds Max можно, включив в настройках Advanced Effects источника света свойство Ambient Only (рис. 1). Другой способ – это изменить цвет Ambient Light панели Environment and Effects c черного (черный означает отсутствие окружающего освещения, принят по умолчанию) на более светлый и отключить в свитке Advanced Effects настроек источника света параметры Diffuse, Specular и Ambient Only. [caption id="attachment_245" align="aligncenter" width="150" caption="Рис. 1"][/caption]Диффузное отражение. Часть света от прямых источников зеркально отражается поверхностью, а остальной свет диффузно рассеивается во всех направлениях (рис. 2). [caption id="attachment_246" align="aligncenter" width="210" caption="Рис. 2"][/caption]Интенсивность рассеянного света зависит от угла падающего на поверхность света (рис. 3) и вычисляется по закону Ламберта:

Idiff=Id·kdiff·cos(θ),

где Id — интенсивность падающего на поверхность света, kdiff — коэффициент, характеризующий рассеивающие свойства поверхности (его значение изменяется в пределах от 0 до 1), cos(θ) — угол между направлением на источник света и нормалью поверхности. [caption id="attachment_262" align="aligncenter" width="210" caption="Рис. 3"][/caption] Следовательно, поверхность будет освещена больше, если свет падает на нее перпендикулярно  и меньше, если свет падает под любым другим углом. Диффузно рассеянный свет является главным источником визуальной информации о геометрии трехмерных объектов. В 3ds Max диффузное отражение света можно увидеть, отключив Specular в свойствах источников света (свиток Advanced Effects) (рис. 4). Второй способ достичь того же результата – установить черный цвет для Specular в свойствах материала и для Ambient в панели Environment and Effects. [caption id="attachment_248" align="aligncenter" width="193" caption="Рис. 4"][/caption]Зеркальное отражение Кроме чисто зеркального отражения, которое имеют идеально отполированные поверхности, различают так называемое Glossiness или распределенное зеркальное отражение – отражение в некотором створе углов, а не на один единственный угол (рис. 5). [caption id="attachment_258" align="aligncenter" width="291" caption="Рис. 5"][/caption] Такое рассеяние света обусловлено микрорельефом («шероховатостью») поверхности, так как поверхность реальных объектов не является идеально гладкой, а состоит из большого количества микровыступов и впадин, которые зеркально отражают падающий свет под разными углами. Результатом glossy-отражения является Specular Highlight – яркий световой блик, размер которого зависит от степени шероховатости поверхности. Для большинства реальных материалов всегда видна зеркальная подсветка в форме светового пятна, а не в форме яркой точки. Поэтому для расчета интенсивности зеркально отраженного света используется формула, предложенная Фонгом:

Ispec=Is·ks·cosn(α),

где Ispec — интенсивность зеркально отраженного света, Is — интенсивность источника света, ks — коэффициент, характеризующий свойства зеркального отражения поверхности, α — угол между направлением идеального отражения и направлением на наблюдателя (рис. 6). [caption id="attachment_263" align="aligncenter" width="280" caption="Рис. 6"][/caption] Степень n определяет размер пятна светового блика – чем больше n, тем меньше световой блик, и тем ближе отражающие свойства поверхности к свойствам идеального зеркала (рис. 7). [caption id="attachment_259" align="aligncenter" width="300" caption="Рис. 7"][/caption] Формула Фонга не имеет физического смысла. Ее используют только потому, что она дает хорошие практические результаты. Зеркальную подсветку в 3ds Max можно увидеть, установив черный цвет Diffuse color для материала и черный цвет Ambient light в панели Environment and Effects (рис. 8). [caption id="attachment_252" align="aligncenter" width="300" caption="Рис. 8"][/caption]В 3ds Max коэффициенту ks соответствует параметр Specular Level, n – параметр Glossiness группы настроек материала Specular Highlights (рис. 9). [caption id="attachment_253" align="aligncenter" width="300" caption="Рис. 9"][/caption]Расстояние до объекта Чтобы различать объекты, находящиеся на разных расстояниях от камеры, используется функция затухания интенсивности света с расстоянием:

I(r)= I/r2.

Хотя на самом деле используется модифицированная формула, более приемлемая на практике:

I(r) = I/(a+br+cr2).

Расчетная формула Таким образом, локальная модель освещенности предполагает расчет отраженной фоновой освещенности, диффузного и зеркального отражения от прямых источников:

Iполн=Iamb+(Idiff+Ispec)/(a+br+cr2)= =ka·Ia+(Id·kdiff·cos(θ)+Is·ks·cosn(α)) /(a+br+cr2).

Это формула для расчета освещенности по одному каналу для одного источника света. Полная освещенность должна рассчитываться по всем трем основным каналам (RGB) и для всех источников освещения в трехмерной сцене и затем суммироваться. Эта модель получила название модели освещенности Фонга (не путать с моделью затенения Фонга) и является основной моделью в рендерах, использующих методы построчного сканирования. Источники:
  1. Сиваков И. http://www.3dmir.ru
  2. Горелик Александр. Основы моделирования и визуализации в 3ds Max (в упражнениях).

Редактор сайта

]]>

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *