- •Компьютерная графика
- •0915 “Компьютерная инженерия”
- •Чернигов чгту 2008
- •Задание бкс по безье
- •Сплайны
- •3 Алгоритмы вычислительной геометрии. Геометрия на плоскости План раздела
- •Отсечение отрезков по окну
- •Отсечение многоугольника по окну
- •Задача триангуляции
- •Условие Делоне
- •Алгоритм триангуляции Делоне
- •4 Трехмерная вычислительная геометрия план раздела
- •Описание плоскости через точку и нормаль
- •Описание плоскости через три инцидентные ей точки
- •Описание плоскости через вершины полигона
- •Точка встречи плоскости и прямой
- •5 Описание перемещений и деформаций объектов план раздела
- •Перенос, масштабирование и поворот двумерной точки Обычный линейный перенос…
- •Масштабирование координат
- •Поворот (вокруг начала координат)
- •Неоднородность описаний
- •Как перемещение описать умножением?
- •Однородные координаты
- •Формальный подход
- •Но, к счастью…
- •Пример: отображение окна в окно Постановка задачи
- •Решение
- •Октарные и бинарные деревья
- •Дополнительные условия
- •Проверка правильности задания граничного представления
- •Итоги раздела
- •7 Понятие о видеоконвейере
- •Исходное состояние
- •Результат шага 1
- •Что видит и чего не видит наблюдатель?
- •Результат шага 2
- •Результат шага 3
- •Результат:
- •8 Видовое преобразование
- •План раздела
- •Исходное состояние
- •Вычисление базиса ск камеры
- •Стратегия видового преобразования
- •Принцип относительности движений
- •9 Особенности отсечения по видимому объему
- •План раздела
- •Суть действия «отсечения»
- •Различные формы видимых объемов
- •Выпуклые оболочки граней
- •Метод Коэна-Сазерленда в применении к трехмерному случаю
- •Результат быстрой селекции граней
- •Объекты, которые отсекаются в трехмерном случае
- •Общая схема действий по отсечению
- •Как задается видимый объем
- •Дополнительные проблемы отсечения при центральном проецировании
- •Повышение эффективности проверок при центральном проецировании
- •10 Удаление невидимых граней, ребер и вершин
- •План раздела
- •Общая классификация методов удаления невидимого
- •Алгоритмическая основа удаления невидимых примитивов
- •Неустранимое противоречие
- •Классификация методов удаления невидимых примитивов
- •Замечание о трудоемкости методов
- •Алгоритм робертса
- •«Матрица тела»
- •Учет видового преобразования
- •Алгоритм z-буфера
- •Алгоритм заполнения z-буфера
- •Пример работы с z-буфером
- •Достоинства алгоритма z-буфера
- •Простота и универсальность.
- •Он нечувствителен к сложности сцены.
- •Недостаток алгоритма z-буфера
- •Повышенный расход оперативной памяти.
- •11Построение проекций план раздела
- •Общая классификация проекций Понятие «проекция»
- •12Рендеринг по освещенности план раздела
- •Модели локального освещения объектов
- •Ограничения локальной модели освещения объектов сцены
- •Рассеянное освещение
- •Диффузное отражение света
- •Зеркальное отражение света
- •«Краевой эффект» Маха(Mach Bound Effect)
- •Модель затенения Гуро (h.Gouraud)
- •Модель затенения Фонга (Phong)
- •Модификации модели затенения Фонга
- •Иллюстрация методов шейдинга для сравнения
- •Алгоритмы получения высокореалистических изображений общие замечания
- •Классическая прямая трассировка лучей
- •Обратная трассировка лучей
- •Вторичные лучи обратной трассировки
- •Дерево вторичных лучей обратной трассировки
- •Достоинства и недостатки метода обратной трассировки световых лучей
- •Распределенная (стохастическая) трассировка лучей (рстл)
- •О сэмплинге
- •Так почему трассировка здесь называется «распределенная»?
- •И просто несколько красивых картинок…
- •13 Растровые изображения План раздела
- •Растровый документ: Представление слоями
- •Смешение цветов в слоях
- •Алгоритм брезенхема – предпосылки-1
- •Предпосылки-2
- •Проблемы яркости отрезка
- •Компенсация алиасинга яркостью
- •Растеризация окружности – подходы
- •Заливка областей постоянным цветом
- •Классификация областей
- •Классификация областей Итог и примеры
- •Простейший рекурсивный алгоритм заливки
- •Примерный вид текстурированной грани
- •Неочевидные применения текстур
- •Быстрый приближенный «шейдинг по способу Фонга»
- •Быстрое приближенное построение отражений
- •А. Теория цвета и цветоизмерение свет и цвет
- •Феномен составных цветов
- •«Уравновешивание» цветов
- •Странности сине-зеленого цвета
- •«Отрицательный» красный цвет
- •Диаграммы уравновешивания цветов
- •Измерение цвета
- •Цветовой охват
- •Б. Воспроизведение цветов
- •Технология светоизлучения (суммирующая)
- •Реализация модели rgb
- •«Цветовой куб» модели rgb
- •Изохромы
- •Технология цветопоглощения (вычитающая)
- •Субтрактивная цветовая модель cmyk
- •Как задается цвет в модели cmyk
- •Проблемы преобразования цвета
- •«Техническая» цветовая модель l*a*b
- •Использование модели l*a*b
- •«Художественная» цветовая модель hsl
- •Проблемы правильной передачи цвета
- •16Сжатие графических файлов план раздела
- •Перечисление методов точного сжатия
- •Кодирование однородных серий
- •44 44 44 11 11 11 11 11 01 33 Ff 22 22 - исходная последовательность байтов
- •Алгоритм лемпела–зива-велча ( Lempel- Ziev-Welch, lzw )
- •Битовые коды переменной длины (метод хаффмана)
- •Методы энтропийнного сжатия
- •Индексирование цвета
- •7. Седьмое преобразование:
- •Проектор экранный микрозеркальный (устройство)
- •Дискретное микрозеркальное устройство
- •B. Устройства получения твердых копий струйные принтеры
- •Технология электрографического копирования
- •Устройство черно-белого лазерного принтера
- •Устройство цветного лазерного принтера
- •Итоги раздела
- •Джойстик
- •Дискретный
- •Плавный
- •Содержание
12Рендеринг по освещенности план раздела
Постановка задачи раскраски сцены.
Модели локального освещения объектов.
Модели затенения (шейдинг).
Алгоритмы получения высокореалистических изображений.
Зачем нужен рендеринг
РЕНДЕРИНГ – Закрашивание изображения объектов с учетом свойств материалов и структуры освещенности сцены.
Ниже показан кубик, показанный разными изобразительными средствами: только вершины, только ребра, только закрашенные полигоны граней и совмещение ребер с закрашенными гранями. Этот пример показывает, что даже такая примитивная закраска ребер улучшает восприятие объекта и делает это восприятие более полным.
Модели локального освещения объектов
Это наиболее распространенная в компьютерной графике концепция получения изображений, полностью синтезированных программно, но обладающих достаточно хорошими потребительскими свойствами.
Ограничения локальной модели освещения объектов сцены
Освещенность определяется только рассеянным светом сцены и явно заданными точечными источниками света.
Взаимодействие света и объектов сводится только к ОДНОКРАТНОМУ ОТРАЖЕНИЮ от НЕПРОЗРАЧНЫХ поверхностей.
Из приведенного видно, что эти ограничения (условия) воспроизводят только часть физических эффектов, действующих при взаимодействии света с материальными объектами трехмерной сцены.
Рассеянное освещение
Эта составляющая локальной освещенности нужна как модель поля многократно отраженных и рассеянных лучей света, всегда присутствующих в реальных сценах. Рассеянное освещение считается абсолютно однородно распределенным в сцене с интенсивностью Ia и не имеющим направления. Следовательно, цвет рассеянного освещения и его интенсивность можно отнести к параметрам сцены. В этом и состоит условность этого понятия.
Синоним – ambient illumination.
Для каждого примитива сцены устанавливается величина ka, которая определяет, какую долю рассеянного света он отражает. (Строго говоря, этих величин три, по одной на каждую цветовую компоненту цвета рассеянного освещения сцены). Тогда яркость закраски примитива выражается так:
Диффузное отражение света
Это отражение света характерно для шероховатых поверхностей. Модель диффузного отражения предполагает, что любой направленный луч отражается от поверхности с одинаковой яркостью в любом направлении внешней (по отношению к поверхности) полусферы.
Яркость диффузно отраженного света (а, значит, и диффузная яркость закраски примитива) рассчитывается по закону Ламберта:
Где
Id – яркость падающего луча света;
Kdiff – коэффициент диффузного отражения;
- угол падения внешнего луча.
Иллюстрация расчета диффузной закраски
Зеркальное отражение света
Закон идеального зеркального отражения известен из школьного курса физики. Вместе с тем, реальные поверхности тел при отражении света ведут себя сложнее. Более адекватной моделью зеркального (specular) отражения является модель Фонга.
Б.Т.Фонг экспериментально установил, что в реальности отраженный луч не полностью излучается в идеальном направлении, задаваемым углом отражения. На самом деле имеет место рассеяние в пределах некоторого телесного угла, тем более узкого, чем лучше отражательная способность поверхности. Диаграмму направленности отраженного луча с учетом рассеяния Фонг аппроксимировал тригонометрической функцией cosn(), которая физического смысла не имеет, а выполняет только роль числового множителя.
Формула Фонга для зеркального отражения
Здесь Is – яркость падающего луча, Ks – коэффициент зеркального отражения, - отклонение фактического рассеянного луча от идеального направления зеркального отражения.
Зеркальные блики, рассчитанные по формуле Фонга.
УЧЕТ РАССТОЯНИЯ ДО ИСТОЧНИКА СВЕТА
Известно, что освещенность (яркость единицы площади) теоретически убывает обратно пропорционально квадрату расстояния.
При r=0 получаем практически бессмысленное бесконечное значение яркости. Поэтому на практике пользуются несколько измененной формулой:
Коэффициенты a,b,c в знаменателе формулы учитывают конечные размеры источников света.
РАСЧЕТ ПОЛНОЙ ЛОКАЛЬНОЙ ОСВЕЩЕННОСТИ
Его выполняют по алгоритму, ядром которого являются следующие три вложенных цикла:
К примеру, по каналу R полная освещенность площадки :
Эти соотношения определяют концепцию расчета закраски примитивов сцены, которая в обиходе называется «МОДЕЛЬ ОСВЕЩЕННОСТИ по Б.Т.Фонгу»
Пример применения модели Фонга для синего (B) канала
На рисунках показано, как примитивы объектов сцены сначала закрашиваются яркостью рассеянного освещения, затем на него накладывается дополнительная яркость от диффузного отражения, затем дополнительно накладываются зеркальные блики. В итоге получается суммарная картинка.
МОДЕЛИ ЗАТЕНЕНИЯ
Техникой «затенения» называют совокупность приемов «растушевки» закраски по площади изображения примитива. Целью такого подхода является уменьшение вычислений за счет того, что яркость рассчитывается НЕ ВО ВСЕХ ПИКСЕЛАХ изображения объекта(что расточительно!), а только в ПРАВИЛЬНО ВЫБРАННЫХ.
Потом эти значения ИНТЕРПОЛИРУЮТСЯ по ВСЕЙ ПЛОЩАДИ ОБЪЕКТА.
Затенение «по площадкам» (Flat Shading)
Рассмотрим сначала объект который представлен классической трехуровневой моделью данных, на верхнем уровне которой находятся плоские грани. Заполнение изображений граней производится по алгоритму модели локальной освещенности. Вот результат:
Полигонов мало, они крупные и ясно просматриваются на картинке..
Для улучшения качества изображения сферы изменим модель, увеличив количество граней в три раза.
Полигонов теперь много и они мелкие. Вид стал немного лучше. Но это – дорогой способ увеличения качества, он связан со значительным усложнением модели и повышением трудоемкости всех операций видеоконвейера.