Лекция: Реалистичная графика. Обратная трассировка луча.

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

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

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

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

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

Алгоритм работы

Простейшей моделью освещенности является модель Уиттеда, согласно которой световая энергия, покидающая точку в направлении вектора г, определяется формулой где ka, kd,ks — веса фонового, диффузного и зеркального освещения;

kr, kt — веса отраженного и преломленного лучей;

С(l ) — цвет объекта в точке Р;

n- вектор нормали в точке Р;

l j — направление на j-e источник света;

Ij(l ) — цвет j-ro источника света;

b r , b t — коэффициенты ослабления для сред, содержащих отраженный и

преломленный лучи;

dr, dt — расстояния от точки Р до ближайших точек пересечения отраженного и

преломленного лучей с объектами сцены;

hj — вектор, задаваемый формулой

p — коэффициент Фонга.

 

еще рефераты
Еще работы по информатике