Смекни!
smekni.com

Методы раскрашивания поверхностей метод Гуро, Фонга, трассировка лучей, преломление света (стр. 3 из 3)

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

Метод обратной трассировки лучей позволят значительно сократить перебор световых лучей. Метод разработан в 80-х годах, основополагающими считаются работы Уиттеда и Кэя. Согласно этому методу отслеживание лучей производится не от источников света, а в обратном направлении – от точки наблюдения. Так учитываются только те лучи, которые вносят вклад в формирование изображения.

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

1) Среди всех типов объектов выделим некоторые, которые назовем источниками света. Источники света могут только излучать свет, но не могут его отражать или преломлять. Будем рассматривать только точечные источники света.

2) Свойства отражающих поверхностей описываются суммой двух компонент – диффузной и зеркальной.

3) Зеркальность тоже описывается двумя составляющими: первая (reflection) учитывает отражение от других объектов, не являющихся источниками света. Вторая компонента (specular) означает световые блики от источников света.

4) При диффузном отражении учитываются только лучи от источников света. Лучи от зеркально отражающих поверхностей игнорируются.

5) Для прозрачных (transparent) объектов обычно не учитывается зависимость коэффициента преломления от длины волны. Иногда прозрачность вообще моделируют без преломления, то есть направление преломленного луча t совпадает с направлением падающего луча.

6) Для учета освещенности объектов светом, рассеиваемым другими объектами, вводится фоновая составляющая (ambient).

7) Для завершения трассировки вводят некоторое пороговое значение освещенности, которое уже не должно вносить вклад в результирующий цвет, либо ограничивают число итераций.

Согласно модели Уиттеда цвет некоторой точки объекта определяется суммарной интенсивностью

I(λ)= KaIa(λ)С(λ) + KdId(λ)С(λ)+ KsIs(λ) + KrIr(λ) + KtIt(λ), (11)

Где λ- длина волны, С(λ)- заданный исходный цвет точки объекта, Ka, Kd, Ks, Kr, Kt –коэффициенты, учитывающие свойства конкретного объекта параметрами фоновой подсветки диффузного рассеивания, зеркальности, отражения и прозрачности, Ia(λ) – интенсивность фоновой подсветки, Id(λ)- интенсивность, учитываемая для диффузного рассеивания, Is(λ) - интенсивность, учитываемая для зеркальности, Ir(λ) – интенсивность излучения, приходящего по отраженному лучу, It(λ) - интенсивность излучения, приходящего по преломленному лучу.

Общие выводы по методу обратной трассировки лучей.

Достоинства:

1) Универсальность метода, его применимость для синтеза изображений достаточно сложных пространственных схем. Воплощает многие законы геометрической оптики. Просто реализуются разнообразные проекции.

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

3) Все преобразования координат (если таковые есть) линейны, поэтому достаточно просто работать с текстурами.

4) Для одного пиксела растрового изображения можно трассировать несколько близко расположенных лучей, а потом усреднять их цвет для устранения эффекта ступенчатости (антиалиасинг)

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

Недостатки:

1) Проблемы с моделированием диффузного отражения и преломления.

2) Для каждой точки изображения необходимо выполнять много вычислительных операций. Трассировка лучей относится к числу самых медленных алгоритмов синтеза изображений.