Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций по КГ.doc
Скачиваний:
16
Добавлен:
12.09.2019
Размер:
17.06 Mб
Скачать

12Рендеринг по освещенности план раздела

  1. Постановка задачи раскраски сцены.

  2. Модели локального освещения объектов.

  3. Модели затенения (шейдинг).

  4. Алгоритмы получения высокореалистических изображений.

Зачем нужен рендеринг

РЕНДЕРИНГ – Закрашивание изображения объектов с учетом свойств материалов и структуры освещенности сцены.

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

Модели локального освещения объектов

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

Ограничения локальной модели освещения объектов сцены

  1. Освещенность определяется только рассеянным светом сцены и явно заданными точечными источниками света.

  2. Взаимодействие света и объектов сводится только к ОДНОКРАТНОМУ ОТРАЖЕНИЮ от НЕПРОЗРАЧНЫХ поверхностей.

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

Рассеянное освещение

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

Синоним – ambient illumination.

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

Диффузное отражение света

Это отражение света характерно для шероховатых поверхностей. Модель диффузного отражения предполагает, что любой направленный луч отражается от поверхности с одинаковой яркостью в любом направлении внешней (по отношению к поверхности) полусферы.

Яркость диффузно отраженного света (а, значит, и диффузная яркость закраски примитива) рассчитывается по закону Ламберта:

Где

Id – яркость падающего луча света;

Kdiff – коэффициент диффузного отражения;

 - угол падения внешнего луча.

Иллюстрация расчета диффузной закраски

Зеркальное отражение света

Закон идеального зеркального отражения известен из школьного курса физики. Вместе с тем, реальные поверхности тел при отражении света ведут себя сложнее. Более адекватной моделью зеркального (specular) отражения является модель Фонга.

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

Формула Фонга для зеркального отражения

Здесь Is – яркость падающего луча, Ks – коэффициент зеркального отражения,  - отклонение фактического рассеянного луча от идеального направления зеркального отражения.

Зеркальные блики, рассчитанные по формуле Фонга.

УЧЕТ РАССТОЯНИЯ ДО ИСТОЧНИКА СВЕТА

Известно, что освещенность (яркость единицы площади) теоретически убывает обратно пропорционально квадрату расстояния.

При r=0 получаем практически бессмысленное бесконечное значение яркости. Поэтому на практике пользуются несколько измененной формулой:

Коэффициенты a,b,c в знаменателе формулы учитывают конечные размеры источников света.

РАСЧЕТ ПОЛНОЙ ЛОКАЛЬНОЙ ОСВЕЩЕННОСТИ

Его выполняют по алгоритму, ядром которого являются следующие три вложенных цикла:

К примеру, по каналу R полная освещенность площадки :

Эти соотношения определяют концепцию расчета закраски примитивов сцены, которая в обиходе называется «МОДЕЛЬ ОСВЕЩЕННОСТИ по Б.Т.Фонгу»

Пример применения модели Фонга для синего (B) канала

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

МОДЕЛИ ЗАТЕНЕНИЯ

Техникой «затенения» называют совокупность приемов «растушевки» закраски по площади изображения примитива. Целью такого подхода является уменьшение вычислений за счет того, что яркость рассчитывается НЕ ВО ВСЕХ ПИКСЕЛАХ изображения объекта(что расточительно!), а только в ПРАВИЛЬНО ВЫБРАННЫХ.

Потом эти значения ИНТЕРПОЛИРУЮТСЯ по ВСЕЙ ПЛОЩАДИ ОБЪЕКТА.

Затенение «по площадкам» (Flat Shading)

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

Полигонов мало, они крупные и ясно просматриваются на картинке..

Для улучшения качества изображения сферы изменим модель, увеличив количество граней в три раза.

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