МЕТОД ТРАССИРОВКИ ЛУЧЕЙ. СЦЕНА.


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

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

Существует два типа процесса:
1) прямая трассировка лучей (дает возможность получить описание сцены, но требует значительных вычислительных затрат); 2) обратная трассировка лучей (ход лучей от наблюдателя к объекту).
Цвет точки экрана будет определяться долей световой энергии попавшей и покинувшей точку в направлении глаза. Для определения энергии надо определить освещенность точки экрана. Определение освещенности и той части световой энергии, которая уходит и является ключевой задачей метода. Энергия складывается из непосредственной первичной освещенности (энергии получаемой от источников) и вторичный (энергии поступающей от других объектов). Отбрасываемая энергия состоит из той энергии, которая отражается или преломляется в заданном направлении.

Некотрые сведения из физики процесса распространения света.
Свет — физическое явление, обладающее дуализмом (поток частиц распространяющихся по прямолинейным траекториям и в то же время электромагнитные волны). Интенсивность света определяется амплитудой волны, цвет — частотой или длиной волны. Математически описывается уравнениями Максвелла. Произвольный луч — сумма волн с разными длинами, распространяющихся в одном направлении. Вклад волны с длиной ? определяется функцией I(?), т.е. функцией спектральной кривой (характеристикой) данного луча света. В реальности человеческий глаз воспринимает цвет от множества источников с разными I(?). Однако при анализе ограничиваются конечным набором значений ?, используя комбинации базовых (RED, GREEN, BLUE) цветов.

Процесс распространения света состоит из двух частей:
1) распространения света в однородной среде; 2) взаимодействие с границей раздела сред.
В однородной среде свет распространяется вдоль прямой с V=CONST. Отношение скорости света в вакууме к этой скорости — коэффициент преломления (индекс рефракции) среды ?. Обычно он зависит от ?.
При распространении в среде присутствует экспоненциальное затухание с коэффициентом e-?l, где l — расстояние, пройденное лучом в среде, а ? — коэффициент затухания.

При взаимодействии с границей происходит отражение или преломление. Ситуации для идеальных моделей, с плоской границей, могут быть следующими:
1) Зеркальное отражение, когда отраженный луч падает и полностью отражается согласно закону в одной плоскости. 2) Диффузное отражение, где идеальный вариант описывается законом Ламберта, согласно которому падающий свет распространяется во все стороны с I = const. Все направления равноправны и освещенность пропорциональна доле площади, видимой от источника. 3) Идеальное преломление , это когда луч, падающий в точку P в направлении вектора I преломляется внутри второй среды в направлении t по закону Снеллиуса. Справедливо соотношение для углов: ?isin?i = ?tsin?t. 4) Диффузное преломление аналогично диффузному отражению, но при этом уже преломленный луч идет по всем направлениям с одинаковой интенсивностью.

Рассмотрим распределение световой энергии при отражении и преломлении. Известно, что доля отраженной энергии задается коэффициентами Френеля. На практике имеем объекты состоящие из множества случайно ориентированных микрограней, с заданным законом распределения. Для описания поверхности используют функцию D(?), задающую плотность распределения случайной величины ? (для гладкой поверхности D(?) совпадает с ?-функцией Дирака). Существует несколько моделей D(?):- это распределение Гаусса и распределение Бекмена.

Ввиду разной ориентации граней, направление отраженных лучей различно. Доля отраженной энергии определится коэффициентом Френеля. Кроме этого воздействие соседних микрограней будет вызывать затеняющее действие, и описывается своей функцией. Для того чтобы практически рассчитать величину отраженной энергии вводят ряд ограничений на описываемую сцену:- источники света точечные; -при трассировании преломленного луча игнорируется зависимость его направления от длины волны; -освещенность объекта состоит из зеркальной и диффузной частей с заданными весами; -для компенсации не учитываемых величин вводится т.н. фоновое освещение — равномерное освещение со всех сторон.

Ввиду сложности формулы уравнение энергии, покидающей т.P на практике используют более простые модели. Например, модель Холла или модель Уиттеда (с применением интерполяции для нахождения коэффициентов Френеля в сочетании с табличным методом задания).

Тем самым приходим к следующей схеме трассировки лучей: через каждый пиксел экрана луч трассируется до ближайшего пересечения с объектами сцены. Из точки пересечения выпускаются ко всем источникам света для проверки их видимости и определения непосредственной освещенности точки пересечения. Выпускаются также отраженный и преломленный лучи, которые трассируются, в свою очередь, до ближайшего пересечения с объектами сцены, и так далее. Получается рекурсивный алгоритм трассировки. Критерием остановки процесса обычно используется отсечение по глубине (не более заданного количества уровней рекурсии) и по весу (чем дальше, тем меньше вклад каждого луча в итоговый цвет пиксела, и, как только этот вклад опускается ниже некоторого порога, дальнейшая трассировка прекращается).

Загрузка...