Справочная книга по светотехнике
МЕТОДЫ ГЛОБАЛЬНОГО ОСВЕЩЕНИЯ
8.5.1. История вопроса и обшие положения
Начиная с 80-х годов XX века происходит бурное развитие компьютерной техники в направлении повышения быстродействия и объема памяти, появляются мощные графические станции, а также цветные крупноформатные мониторы с высоким разрешением. Это послужило толчком к появлению нового направления — компьютерной графики, позволившей с помощью математических моделей исследуемого объекта или процесса получать их статическое или динамическое грехмерное цветное изображение, воспринимаемое близко к реальному прототипу. На базе современных математических методов была создана теоретическая база и разработаны компьютерные графические проіраммьі — программы реалистической визуализации.
На первом этапе своего развития такие программы предназначались, главным образом, для технического дизайна, машиностроительного и архитектурного проектирования и т. п. Реалистичность здесь используется как средство либо оценки качества выбранных решений (архитектурное проектирование, технический дизайн), либо повышения эмоционального воздействия (реклама). либо создания адекватного восприятия реальной обстановки при имитации (видеотренажеры, системы распознавания образов). Освещение же иіраст хотя и важную, по вспомогательную роль: позволяет выявить форму, цвет, текстуру поверхностей объектов сцены. В качестве ИС в таких программах, как правило, используются условные излучатели, например, в виде равномерно светящей точки или шара (omni), параллельного или расходящегося пучка лучей (spot), а также в виде некоего фантомного источника для создания фонового освещения (ambient), который пе имеет местоположения и пе создает теней. При этом могут использоваться различные световые эффекты: затухание света в пучке, изменение его ширины и формы, цвета и интенсивности. Главное, что такие источники не связаны с реальными СП пи по светораспрелелению, ни по энергетическим параметрам.
Первые программы визуализации использовали упрошенные модели, в которых рассматривалось только прямое освещение от конечного числа точечных источников. а процессы переотражепия света не учитывались. Это существенно облегчало расчеты, по при этом изображение спены было далеким от реальности: резкие тени, пе освешеппая прямым светом поверхность объекта становится черной, а освещенная — выглядит неестественной (пластмассовой). Такое освещение получило название локального освещения (local illumination).
Начиная с 90-х годов стало оформляться второе направление: появились программы, непосредственно предназначенные для создания фотореалистических образов моделируемых ОУ. Такие программы используются, в основном, в архитектурном освещении для создания цветоснегового образа будущей установки. Здесь роль освещения — первостепенна. Должны быть максимально точно переданы все нюансы, определяющие эмоциональное восприятие моделируемого интерьера или экстерьера. При этом важнейшим принципом такого моделирования является то, что принятые при проектировании модели средства и приемы освещения должны быть адекватны, т. е. обеспечивать в максимальной степени воспроизведение цветосветового образа модели в реальных условиях, и реализуемы на практике. Попятно, что выполнение такого принципа базируется на достаточно точном воспроизведении реальных характеристик ОП и оптических свойств отражающих и пропускающих свет поверхностей, учете процессов переотражения света, затенения ИС и экранирования одних поверхностей другими. Кроме того, в таких программах для большей реалистичности модели широко используются различные цветовые и рельефные текстуры поверхностей; учитывается изменение цветности ихпучепия при его взаимодействии с отражающими и пропускающими поверхностями: присутствует глубокая детализация сцены: большое число элементов интерьера (мебели, офисного и другого оборудования и т. п.). строительные и архитектурные детали в экстерьере зданий, растительность и элементы ландшафта; обеспечивается возможность использования естественного (рассеянного и прямого солнечного) света.
Такой подход к построению математических моделей для программ реалистической визуализации получил в зарубежной литературе по компьютерной графике название глобального освещения (global illumination). Несмотря па то. что программы визуализации второго направления по своей методологии и целям являются светотехническими, созданы они были не в светотехнической среде, а в среде компьютерной графики. Это наложило отпечаток на принятую здесь терминологию: многие понятия и термины, используемые в настоящее время в светотехнике, привнесены из компьютерной графики. Причем, так как в русскоязычной светотехнической литературе эти вопросы ло последнего времени вообще не были освещены, то и русские эквиваленты различных английских терминов еше носят пе устоявшийся характер.
Наиболее важными понятиями в глобальном освещении являются:
Сиена — совокупность просфанственно расположенного набора геометрических объектов, источников света (СП) и камеры (см. ниже). Описание сиены обычно содержит спецификацию рахчичпых свойств е* элементов, включая оптические характеристики отражающих и преломляющих свет поверхностей объектов, их текстуру, цветовые характеристики ихтучепия ИС ■ колориметрические свойства поверхностей, участвк>- щих в перераспределении света, а при необходимости | оптические свойства среды.
Камера (или наблюдатель) — условный фотоаппарат (или глаз человека), помешенный в сцен> I характеризуемый точкой расположения в сцепе, к» правлением наблюдения и полем охвата сцепы, с кот» рыми связывается изображение сцены. Как правах^
В последних версиях таких программ появилась возможность подгружать ИС с реальным спсторасп ределением в формате id
/.(Г. S) |
(8.56) |
р(г. s. s'): |
изображение сцепы строится в перспективной проекции, имитируя реальные условия видения со стороны камеры, по есть возможность построения и параллельной проекции. Экранная плоскость — условная плоскость, на которой формируется изображение снены. Рендеринг (rendering) — процесс воспроизведения компьютером трехмерного изображения сиены при ее визуализации. Методология глобального освещения помимо основною вопроса — построения яркостпой модели сцепы — включает в себя и мною других, включая построение трехмерных геомегрических моделей объектов и их преобразование при перемещении камеры, затенение источников света, экранирование одних объектов другими при наблюдении, расграризания изображения, учет цвета, построение текстур и т. п. Здесь будут освещены только методологические вопросы построения яркостной модели, притом достаточно упрощенно и сжато. В наиболее полном виде информация по этим и связанным с ними вопросам представлена в трудах ежегодных конференций SIGGRAPH (The Special Interest Group Гог Computer Graphics) — специальной группы в составе ACM (Association for Computing Machinery), объединяющей специалистов по компьютерной графике. Из русскоязычных изданий можно указать 18.20], [8.211 и особенно [8.221, где в наибольшей мере увязаны вопросы компьютерной графики и теоретической фотометрии. 8.5.2. Уравнение визуализации С фотометрической точки зрения построение изображения сцены сводится к нахождению распределения поля яркости, видимого в направлении камеры. Базисным уравнением глобального освещения, связывающим яркость точки отражающей поверхности сцены с яркостью окружающего пространства, является так называемое уравнение визуализации, предложенное Дж. Кад - жни (J. Kajiya) [8.23]: /. (F, s)=|/.(r, s')p(F, s, s') |(s' ri)|c/to(s'), (8.55) 271 где /. (r. s) — яркость в точке г поверхности объекта сиены в направлении камеры, определяемом вектором s. Вектор г координируется относительно выбранного базиса сцепы (i, j, к) (рис. 8.11); /. (F, s') — яркость, видимая из точки F в направлении вектора s'; р(г. s, s') — функция двунаправленного распределения отражения (bidirectional reflection distribution function), сокращенно — BRDF; (s'n) — скалярное произведение вектора падающего луча s' и вектора нормали п в точке F. Для принятого направления вектора s' — по ходу луча — эта величина |
Как видно из определения, функция BRDF имеет размерность [стер-1] . По аналогии с отражающими поверхностями для пропускающих поверхностей используется функция двунаправленного распределения пропускания BTDF (bidirectional transmittance distribution function) — т(г, s, s'). В случае необходимости учета как отражения, так и пропускания удобно использовать обобщенную функцию двунаправленного распределения рассеяния BSDF (bidirectional scattering distribution function) — a(F. s, s'), определяемую в следующем виде: Jp(r. s, s') при (s'-п)<0, л (r, s, s ) = { . . „ . (8.57) (т(г, s, s') при (s' n)>0. Если точка F расположена па светоизлучающей поверхности (т. е. на источнике), то в правую часть уравнения (8.55) необходимо добавить слагаемое, определяющее яркость этой поверхности за счет собственного ихіучения — /.0 (F. s): /. (F, s) = Ц (г. s) + + |L (г, s')p(F, s, s') |(s' n|rfa)(s'). (8.58) 2п |
имеет отрицательное значение, поэтому в уравнении (8.55) берется по модулю; d(o(s') — элементарный телесный угол относительно вектора падающего луча s'. Функция р (г, s, s') характеризует направленность отражающих свойств поверхности и определяется как отношение яркости элемента поверхности, содержащего точку г. в направлении s, к освещенности этого элемента, обусловленную световым потоком, упавшим на этот элемент в телесном угле rfaHs') в направлении s', т. е. |
/-(г. s) ______________ dh{i, s') /.(г. s') |(s' ri)| АХs') |
Рис. 8.11. К выводу уравнения визуализации |
В отечественной литературе вместо BRDF используется коэффициент яркости, являющийся безразмерным и численно равным функции BRDF, умноженной на л. Учитывая, что практически вся литература по глобальному освещению базируется па BRDF. при изложении данного раздела также использован этот параметр.
в точке F; dF(r, F') = - |
d2 r'. |
(8.59) |
di. i)(sO = |
V(F, F') = |
(8.60) |
Эго выражение представляет собой интегральное уравнение Фредгольма 2-го рода, для которого характерно наличие неизвестной функции /_(г, s) в левой части и под интегралом. Часто для удобства в этом уравнении переходят от интегрирования по телесному углу к интегрированию по поверхности сцепы, для чего выражают элемент телесного угла dw(s') через элемент поверхности d^r' с нормалью п', па который оп опирается (рис. 8.11): |
При этом в уравнение (8.58) вводят функцию видимости К (г, г'), определяемую таким образом: |
1. если точка г' видна из точки г, О, в противном случае. |
(s'n') |r r" I2 |
Jl|r-r'[2 угловой коэффициент, равный доле светового потока элемента площади d^f упавшей па элемент площади d2r (рис. 8.11). Метод излучательности реализуется путем замены интеграла в уравнении (8.62) конечной суммой N слагаемых в соответствии с разбиением на элементы всех поверхностей сцены, участвующих в процессе перераспределения света. В пределах таких элементов светимость М( и коэффициент отражения р, принимаются ПОСТОЯННЫМИ. При ЭТОМ функцию ВИДИМОСТИ Vjj удобно ВКЛЮЧИТЬ В (средний) угловой коэффициент Fjj, который в этом случае определяет долю светового потока конечного элемента A Aj, упавшую на конечный элемент A Aj, с учетом выполнения условия видимости (8.60), тогда: |
-d2r' — элементарный |
тимость): р(г) — коэффициент отражения поверхности |
N Mi = M0j+Pi'£MjFji, 7=1 |
(8.63) |
Тогда уравнение (8.58) принимает вид:
L (г, s) =- L0 (г, s)+ j I. (г, s^p^r, s, s'))
где
cos 5/ cos Sj |
. КS' n)(s' n')| Ir-rf |
ЬУ' Л А, I I Д A j Д Aj |
V (F, F') d2r |
Vjj dAj dAj, (8.64) |
(8.61) |
1 - Pl^ll - Р2^21 |
'Pi Л 2 - Р2^22 |
(8.65) |
где X — поверхность всех элементов сцены, а вектор s'
г - г'
определяется выражением: s = jr'~r:-| •
Даже при предположении ламбертовского характера отражения, существенно упрошаюшего уравнение (8.61), получение аналитического решения возможно ;Тля исключительного числа случаев (фотометрическая сфера, точечный источник между двух бесконечных плоскостей [8.24)), которые представляют скорее теоретический интерес. Для практических задач были разработаны специальные числениые методы. К настоящему времени выявились два главных методологических подхода: метод излучателыюсти (radiosity method) и метод трассировки лучей (ray tracing method). Каждый из этих методов к настоящему времени имеет много различных вариаций, повышающих их эффективность. Здесь будет ихюжена только принципиальная сторона каждого метода и даны ссылки для более детального ознакомления.
8.5.3. Метод излучательности
При рассмотрении метода вводится допущение об идеальном диффузном (ламбертовском) отражении, что позволяет легко перейти от яркости к светимости (или освещенности). В этом случае уравнению (8.61) можно придать следующий вид:
М (г) = Л/о (F) + p(F)j М (F') V (F, f')dF(r, F'), (8.62)
I
где Л/ (г) — светимость в точке поверхности объекта сцепы; Мо (F) — то же, за счет светового потока, упавшего непосредственно от источников (первичная све - где
rij = I >7 - Г/1, COS 6,- = — ((F( - Tj)hj) / Гу,
cos5j =((r) - Fy)rij)/rjj.
Уравнение (8.63) можно представить в виде системы N линейных уравнений:
"Pl^l N - P2f2/V
“P/vfyl “PyV^V2 ••• 1_P NFNN
“л/,- |
Г Л#0.1 ' |
|
м2 |
— |
М0.2 |
MN_ |
.N |
для решения которой могут быть использованы разные методы, в частности, в |8.20| указывается на эффективность использования итерационного метола Гаусса- Зейделя.
Метод излучательности хорошо работает с диффузными отражающими поверхностями. В случае же поверхностей с зеркальными и направленно-рассеянными отражениями, а также с прозрачными преломляющими материалами он практически не применяется. К другим недостаткам метода можно отнести то, что в сложных насыщенных сценах существенно загруднеи
учет экранирования одних объектов другими, в частности, при расчете угловых коэффициентов. Для этой пели используется метол трассировки лучей.
8.5.4. Метод трассировки лучей
В основе метола лежит принцип построения траекторий лучей при их распространении в сцепе. Он фи - зичеп, так как отражает реальные процессы при переносе излучения, и нагляден. Существуют лва основных подхода при построении траекторий лучей: в прямом и обратном холе.
Прямая трассировка лучей. При таком подходе имитируется реальное распространение света: ог источника к приемнику (камере). Из источника выпускается пучок лучей и прослеживается путь каждого из них в пространстве сцепы. При попадании луча па поверхность объекта сцены определяется отраженный (а в случае светопропускаюшего материала — и пропущенный) луч и далее прослеживается его траектория. Процесс продолжается до тех пор. пока такой луч пе попадет на приемник или не покинет сцену. В результате можно получить изображение сцены, видимое камерой.
Одпако такой подход неэффективен, так как очевидно, что только незначительная доля вышедших из источника лучей сможет попасть на приемник. И поэтому. чтобы получить па приемнике достаточную информацию, необходимо затратить огромное количество лучей. Это основной недостаток прямой трассировки.
Обратная трассировка лучей. Здесь траектории лучей начинаются на приемнике в направлении объектов сцены и далее к источнику, т. е. в направлении. обратном физическому распространению света. При такой схеме исключаются все «ненужные» (пе попавшие на приемник) лучи. Однако если строить такие траектории, то очевидно, что очень малой доле вышедших из точки наблюдения лучей удастся попасть на источник. Поэтому применяют иную схему: при попадании луча на объект определяется его яркость в направлении наблюдателя, состоящая из двух составляющих: прямой — от источника света — и отраженной — от других объектов сцены. Однако учет отраженной составляющей, особенно при диффузном, а тем более при направленно-рассеянном отражении, представляет собой сложную задачу, требующую больших затрат расчетного времени. Поэтому во многих применяемых в настоящее время моделях трассировки лучей применяются упрощенные алгоритмы, базирующиеся на следующих допущениях:
— рассматриваются только точечные ИС,
— отражение ог поверхности прямого света ИС разделяется на диффузную и направленно-рассеянную составляющие с заданными коэффициентами и р5;
— индикатриса отражения направленно-рассеянной составляющей определяется зависимостью /(<р) = = C'()Cos”<p, где С0 — коэффициент, определяемый из
словия нормировки и равный Q) = -> ц • гДе ®о —
мол падения луча (модель Фонта [8.25]);
- составляющая многократных отражении учитывается введением рассеянной составляющей яркости La =раЕа1п путем приписывания всем поверхностям некой постоянной освещенности Еа и коэффициента рассеянного отражения ра.
Для такой модели яркость луча (рис. 8.12), идущего из точки г в направлении наблюдателя s, при наличии N источников света определяется выражением:
' //(s') . |
N
/.(Г, s)=pa-^+ £
і-1
(8.66) |
(s'-n)i+Pj ^(s-s;,,-)"]
р d
где Ij (s/) — сила света /-го источника в направлении s/ в точку F; q — расстояние от /-го источника до точки г: Sj і — вектор, зеркальный по отношению к падающему лучу sj. определяемый как s' ,■ =s/ — 2(n s-)n.
Рис. 8.12. Схема обратной трассировки лучей |
Попятно, что при наличии светопропускающих элементов в сиепе в уравнение (8.66) должны быть добавлены соответствующие члены с коэффициентами ^а ’ ^d ^ ■
В более сложных моделях отраженная составляющая определяется с использованием статистических алгоритмов (Монте-Карло) [8.26J. Достоинством таких моделей является корректность при описании процесса распространения света в сцене. Одпако при этом необходимо хранить большие объемы информации о сложных моделях направленного рассеяния при каждом акте отражения. Кроме того, имеется присущая статистическим методам медленная сходимость решения.
Существенным недостатком метода обратной трассировки является зависимость построенного изображения от позиции наблюдателя. При ее изменении необходимо строить изображение заново. Поэтому эффективным считается сочетание прямой и обратной трас
сировки, когда обратная трассировка используется для проецироиапия изображения па плоскость экрана, а прямая — для учета затенения, экранироиапия и расчета прямой составляющей.
В наиболее развитых моделях используется синтез методов излучательносги и трассировки. В частности, трассировка используется для расчета угловых коэффициентов с учетом затенения.