- •Компьютерная графика
- •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. Устройства получения твердых копий струйные принтеры
- •Технология электрографического копирования
- •Устройство черно-белого лазерного принтера
- •Устройство цветного лазерного принтера
- •Итоги раздела
- •Джойстик
- •Дискретный
- •Плавный
- •Содержание
Результат шага 2
Результатом шага 2 является уже не вся сцена, а только ЧАСТЬ, ПОПАВШАЯ В ВИДИМЫЙ ОБЪЕМ.
Шаг 3 – УДАЛЕНИЕ НЕВИДИМОГО
Еще один шаг, направленный на уменьшение количества обрабатываемых плоскостей, ребер и вершин. Те из этих объектов, которые заслоняются более близко расположенными, не видны. Зачем тратить ресурсы компьютера для расчета координат, и рендеринг того, что невидимо? Поэтому в каждом объекте выделяют грани, видимые наблюдателем, а все прочие исключаются из обработки. Это тоже направлено на то, чтобы, во-первых, не делать ненужную работу и, во-вторых, ускорить видеоконвейер.
Результат шага 3
Результатом шага 3 является та часть сцены, которая была получена в итоге шага 2, но в каждом из объектов которой УДАЛЕНЫ НЕВИДИМЫЕ ПОВЕРХНОСТИ И ЛИНИИ.
Шаг 4 – ПРОЕЦИРОВАНИЕ
Плоскостью проекции принимается ближняя фронтальная плоскость. Проекция является центральной, центр проекции – фокус объектива камеры
Результат:
Результат – это двумерная картинка – изображение сцены в «экранных» координатах, которые являются вещественными числами.
Шаг 5 – ОТОБРАЖЕНИЕ В ПОРТ ВЫВОДА
Эта задача была примером в разделе, посвященном сложным преобразованиям координатных систем. Напомним, что здесь координаты вершин и, соответственно, отрезков пересчитываются из системы координат Xs-Ys систему координат пикселов экрана. Эти последние представляют собой, как известно, целые числа.
РЕЗУЛЬТАТ: Картинка в графическом порте вывода (например, на экране монитора).
Шаг 6 – РЕНДЕРИНГ
Справка: “to render”(англ.) – исполнять (произведение, роль), интерпретировать что-либо .
Смысл этого шага состоит в заливке изображений граней цветом. В нашем курсе будет еще раздел, посвященный рендерингу, поэтому здесь просто скажем, что в простейшем случае цвет многоугольника, изображающего грань на экране, принимается таким, каким его определяют материал и окраска грани. Чуть более сложный рендеринг требует размещения в сцене, помимо объектов сцены и камеры, еще и источников света с заданными свойствами. Учитывается освещенность каждой грани каждым источникам света.
м
Результат шага 6 - это качественное изображение сцены в графическом порте вывода на экране компьютерного монитора.
ИТОГИ
Видеоконвейер – это достаточно сложная последовательность действий.
Часть из них совершается в «пространстве модели сцены» (пространство объектов), …
…а другая часть – в пространстве изображения на экране.
Многие элементарные действия, такие, как отсечения отрезков или граней, выполняются в видеоконвейере тысячи раз, поэтому от эффективности их реализации сильно зависит общее время визуализации сцены.
Наглядно видна высокая трудоемкость видеоконвейера.
ЗНАЧИТ, для нормальной скорости надо как можно больше этой работы выполнять аппаратно.
В ПК это делается аппаратурой ВИДЕОКОНТРОЛЛЕРА.
Дальше мы детальнее рассмотрим каждую операцию видеоконвейера по отдельности.
8 Видовое преобразование
Рассмотрим подробнее первую операцию видеоконвейера – видовое преобразование. Напомним, что ее суть состоит в том, чтобы пересчитать координаты всех вершин всех объектов сцены из объектной системы координат, связанной со сценой, в систему координат наблюдателя.