Реализация метода обратной трассировки
При практической реализации метода обратной трассировки вводят ограничения. Некоторые из них необходимы, чтобы можно было в принципе решить задачу синтеза изображения, а некоторые ограничения позволяют значительно повысить быстродействие трассировки. Рассмотрим примеры таких ограничений.
1. Среди всех типов объектов выделим некоторые, которые назовём источниками света. Источники света могут только излучать свет, но не могут его отражать или преломлять. Будем рассматривать только точечные источники света.
2. Свойства отражающих поверхностей описываются суммой двух компонент — диффузной и зеркальной.
3. В свою очередь, зеркальность тоже описывается двумя составляющими. Первая (reflection) учитывает отражения от других объектов, не являющихся источниками света. Строится только один зеркальный луч г для дальнейшей трассировки. Вторая компонента {specular) означает световые блики от источников света. Для этого направляются лучи на все источники света и определяются углы, образуемые этими лучами с зеркально отражённым лучом обратной трассировки (r). При зеркальном отражении цвет точки поверхности определяется цветом того, что отражается. В простейшем случае зеркало не имеет собственного цвета поверхности.
4. При диффузном отражении учитываются только лучи от источников света. Лучи от зеркально отражающих поверхностей игнорируются. Если луч, направленный на данный источник света, закрывается другим объектом, значит, данная точка объекта находится в тени. При диффузном отражении цвет освещённой точки поверхности определяется собственным цветом поверхности и цветом источников света.
5. Для прозрачных (transparent) объектов обычно не учитывается зависимость коэффициента преломления от длины волны. Иногда прозрачность вообще моделируют без преломления, то есть направление преломленного луча t совпадает с направлением падающего луча.
6. Для учёта освещённости объектов светом, рассеиваемым другими
объектами, вводится фоновая составляющая.
7. Для завершения трассировки вводят некоторое пороговое значение освещённости, которое уже не должно вносить вклад в результирующий цвет, либо ограничивают количество итераций.
Согласно модели Уиттеда цвет некоторой точки объекта определяется суммарной интенсивностью
где l - длина волны, C(l) - заданный исходный цвет точки объекта, Ki -коэффициенты, учитывающие свойства конкретного объекта параметрами рассеянного света, диффузного и зеркального отражения, прозрачности.
Ia - интенсивность рассеянного света,
Id - интенсивность диффузного отражения,
Is – интенсивность зеркального отражения,
It - интенсивность излучения, проходящего по преломленному лучу.
Интенсивность рассеянного света (Ia) для некоторого объекта обычно
константа. Запишем формулы для остальных интенсивностей. Для диффузного отражения:
где I(l)— интенсивность излучения i-го источника, Θi,— угол между нормалью к поверхности объекта и направлением на i-й источник света.
Для зеркального отражения:
,
где р— показатель степени от единицы до нескольким сотен (согласно модели Фонга), a,— угол между отражённым лучом (обратной трассировки) и направлением на i-й источник света.
Рис. 14.2
Достоинства обратной трассировки лучей:
1. Универсальность метода, его применимость для синтеза изображений достаточно сложных пространственных схем. Воплощает многие законы геометрической оптики. Просто реализуются разнообразные проекции.
2. Даже усечённые варианты этого метода позволяют получить достаточно реалистичные изображения. Например, если ограничиться только первичными лучами (из точки проецирования), то это даёт удаление невидимых точек. Трассировка уже одного-двух вторичных лучей даёт тени, зеркальность, прозрачность.
3. Все преобразования координат (если таковые есть) линейны, поэтому достаточно просто работать с текстурами.
4. Для одного пиксела растрового изображения можно трассировать несколько близко расположенных лучей, а потом усреднять их цвет для устранения эффекта ступенчатости.
5. Поскольку расчёт отдельной точки изображения выполняется независимо от других точек, то это может быть эффективно использовано при реализации данного метода в параллельных вычислительных системах, в которых лучи могут трассироваться одновременно.
Недостатки:
1. Проблемы с моделированием диффузного отражения и преломления.
2. Для каждой точки изображения необходимо выполнять много вычислительных операций. Трассировка лучей относится к числу самых медленных алгоритмов синтеза изображений.
Дата добавления: 2016-07-18; просмотров: 1616;