Без темы
<<  Разработка информационной архитектуры Расширенное совещание с руководителями предприятий отрасли информатизации и связи Республики Татарстан 25 декабря 2014 года  >>
Растеризация Текстуры Композиты
Растеризация Текстуры Композиты
На лекции
На лекции
4-е задание: визуализация односторонних поверхностей
4-е задание: визуализация односторонних поверхностей
Конвейер
Конвейер
Растеризация
Растеризация
Генерация изображения
Генерация изображения
Растеризация
Растеризация
Вычисление цвета пикселя
Вычисление цвета пикселя
Вычисление цвета пикселя: цвет материала
Вычисление цвета пикселя: цвет материала
Вычисление цвета пикселя: закраска Фонга (1/2)
Вычисление цвета пикселя: закраска Фонга (1/2)
Вычисление цвета пикселя: закраска Фонга (2/2)
Вычисление цвета пикселя: закраска Фонга (2/2)
Вычисление цвета пикселя: цвет текстуры
Вычисление цвета пикселя: цвет текстуры
Отображение текстуры (Texture mapping)
Отображение текстуры (Texture mapping)
Текстурирование: постановка задачи
Текстурирование: постановка задачи
Зеркальное отражение (Фонг)
Зеркальное отражение (Фонг)
Атрибуты (параметры)
Атрибуты (параметры)
Отображение текстуры
Отображение текстуры
Пример отображение текстуры: Цилиндр
Пример отображение текстуры: Цилиндр
Пример отображение текстуры: Цилиндр (2)
Пример отображение текстуры: Цилиндр (2)
Пример отображение текстуры: Цилиндр (3)
Пример отображение текстуры: Цилиндр (3)
Другие поверхности
Другие поверхности
Bump mapping
Bump mapping
Bump mapping (2)
Bump mapping (2)
Закраска Фонга и рельефное текстурирование
Закраска Фонга и рельефное текстурирование
Виды рельефных текстур
Виды рельефных текстур
Визуализация текстуры
Визуализация текстуры
Фильтрация текстур
Фильтрация текстур
Фильтрация текстур: метод ближайшего соседа
Фильтрация текстур: метод ближайшего соседа
Фильтрация текстур: Билинейная фильтрация
Фильтрация текстур: Билинейная фильтрация
Фильтрация текстур: MIP – mapping (multum in parvo)
Фильтрация текстур: MIP – mapping (multum in parvo)
Фильтрация текстур: анизотропная фильтрация
Фильтрация текстур: анизотропная фильтрация
Сравнение фильтраций
Сравнение фильтраций
Текстурирование в OpenGL
Текстурирование в OpenGL
Текстурирование в OpenGL (2)
Текстурирование в OpenGL (2)
Текстурирование в OpenGL (3)
Текстурирование в OpenGL (3)
Генерация текстурных координат
Генерация текстурных координат
Композиты
Композиты
Композирование
Композирование
Композирование: Определение
Композирование: Определение
Альфа-канал
Альфа-канал
Композирование с альфа-каналом
Композирование с альфа-каналом
Полупрозрачные объекты
Полупрозрачные объекты
Непрозрачные объекты
Непрозрачные объекты
Композитная алгебра Портера-Даффа
Композитная алгебра Портера-Даффа
Оператор Over
Оператор Over
Композирование в OpenGL
Композирование в OpenGL
Итоги
Итоги

Презентация: «Растеризация Текстуры Композиты». Автор: ymb. Файл: «Растеризация Текстуры Композиты.ppt». Размер zip-архива: 912 КБ.

Растеризация Текстуры Композиты

содержание презентации «Растеризация Текстуры Композиты.ppt»
СлайдТекст
1 Растеризация Текстуры Композиты

Растеризация Текстуры Композиты

2 На лекции

На лекции

4-е задание Задача растеризации Текстурирование Определение Текстурные отображения для сферы, тора, цилиндра Рельефное текстурирование (bump-mapping) Текстурирование в OpenGL Композиты Определение Алгебра композитов Композиты в OpenGL

3 4-е задание: визуализация односторонних поверхностей

4-е задание: визуализация односторонних поверхностей

Лист Мёбиуса

Бутылка Клейна

4 Конвейер

Конвейер

Вершина любого объекта в момент определения немедленно передается в конвейер, и проходит все его ступени 3D координаты -> экранные

Обработка вершин и сборка примитивов

5 Растеризация

Растеризация

6 Генерация изображения

Генерация изображения

Растеризовать примитив Вычислить цвет каждого пикселя Скомбинировать с цветом фона

P1

P3

P2

P4

7 Растеризация

Растеризация

P1

Линия развертки (scanline)

P3

P2

P4

8 Вычисление цвета пикселя

Вычисление цвета пикселя

Цвет материала Cm Цвет текстуры Ct Цвет фона Cb

P1

P3

P2

P4

9 Вычисление цвета пикселя: цвет материала

Вычисление цвета пикселя: цвет материала

Цвет материала Cm Цвет текстуры Ct Цвет фона Cb

P1

P3

P2

P4

10 Вычисление цвета пикселя: закраска Фонга (1/2)

Вычисление цвета пикселя: закраска Фонга (1/2)

11 Вычисление цвета пикселя: закраска Фонга (2/2)

Вычисление цвета пикселя: закраска Фонга (2/2)

12 Вычисление цвета пикселя: цвет текстуры

Вычисление цвета пикселя: цвет текстуры

Цвет материала Cm Цвет текстуры Ct Цвет фона Cb

P1

P3

P2

P4

13 Отображение текстуры (Texture mapping)

Отображение текстуры (Texture mapping)

Общее отображение текстуры Узор, определенный в 2D области, «наклеивается» на объект как кусок обоев и, фактически становится частью объектной базы данных. Когда объект перемещается, текстурный узор перемещается вместе с ним. Разнообразие технологий View-dependent mapping techniques. Bump mapping techniques. Displacement mapping techniques …

(С) http://en.Wikipedia.Org/wiki/texture_mapping

14 Текстурирование: постановка задачи

Текстурирование: постановка задачи

Текстура – часть модели освещения и часть геометрической модели Какой атрибут или параметр модулируется, чтобы получить желаемый эффект? Как осуществляется отображение? Если текстура определена в 2D области, а объект существует в 3D пространстве, нам необходимо определить отображение между этими областями.

15 Зеркальное отражение (Фонг)

Зеркальное отражение (Фонг)

16 Атрибуты (параметры)

Атрибуты (параметры)

Ir = ka*ia + ii (kd*(n.L) + ks*(r.V)?) отражение от поверхности - surface color texture вектор нормали N - bump mapping коэффициенты kd, ks, a - specularity mapping падающий свет ii - environment mapping геометрия - displacement mapping прозрачность - transparency mapping

17 Отображение текстуры

Отображение текстуры

Задать соответствие между координатами изображения текстуры и точками объекта Для полигонального предсталения используется соответствие на вершинах

18 Пример отображение текстуры: Цилиндр

Пример отображение текстуры: Цилиндр

19 Пример отображение текстуры: Цилиндр (2)

Пример отображение текстуры: Цилиндр (2)

P - точка нанесения текстуры Перевести P в параметрические координаты (s,t) s - угловая координата в радианах от оси Х t - координата высоты

20 Пример отображение текстуры: Цилиндр (3)

Пример отображение текстуры: Цилиндр (3)

21 Другие поверхности

Другие поверхности

Параметрические (В-сплайн) поверхности Полигональные поверхности Неявно заданные поверхности

22 Bump mapping

Bump mapping

23 Bump mapping (2)

Bump mapping (2)

24 Закраска Фонга и рельефное текстурирование

Закраска Фонга и рельефное текстурирование

25 Виды рельефных текстур

Виды рельефных текстур

26 Визуализация текстуры

Визуализация текстуры

P1 (s1, t1)

P2 (s2, t2)

P3 (s3, t3)

P4 (s4, t4)

27 Фильтрация текстур

Фильтрация текстур

Magnification

Minification

28 Фильтрация текстур: метод ближайшего соседа

Фильтрация текстур: метод ближайшего соседа

Выбирается цвет ближайшего соответствующего пикселя текстуры Быстрый метод Низкое качество

29 Фильтрация текстур: Билинейная фильтрация

Фильтрация текстур: Билинейная фильтрация

Четыре пикселя текстуры, ближайшие к текущей точке экрана Результирующий цвет – смешение цветов этих пикселей Быстро, достаточно качественно За исключение случаев, когда смотрим на плоскость под углом

30 Фильтрация текстур: MIP – mapping (multum in parvo)

Фильтрация текстур: MIP – mapping (multum in parvo)

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

31 Фильтрация текстур: анизотропная фильтрация

Фильтрация текстур: анизотропная фильтрация

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

32 Сравнение фильтраций

Сравнение фильтраций

Ближайший сосед

Билинейная

Анизотропная

Трилинейная

33 Текстурирование в OpenGL

Текстурирование в OpenGL

RGB00

RGB10

RGBN0

RGB01

RGB11

RGBN1

RGB0M

RGB1M

RGBNM

Создаем текстуру - прямоугольный массив с цветами пикселов. Высота и ширина должны быть степенями двойки.

Получаем номер текстурного объекта

Активизируем текстурный объект

GLuint texture; glGenTextures(1,&texture);

glBindTexture(texture);

34 Текстурирование в OpenGL (2)

Текстурирование в OpenGL (2)

Загружаем текстуру

Устанавливаем режимы текстурирования

glPixelStorei(GL_UNPACK_ALIGNMENT,1); glTexImage2D(GL_TEXTURE_2D, 0, // Mip-level GL_RGB, // Формат текстуры tex_width,tex_height, 0, // Ширина границы GL_RGB, // Формат исходных данных GL_UNSIGNED_BYTE, // Тип данных tex_bits); // Исходные данные

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);

35 Текстурирование в OpenGL (3)

Текстурирование в OpenGL (3)

Разрешаем текстурирования

Задаем текстурные координаты

Возможно, потребуется включить режим перспективного текстурирования

Возвращаем номер текстурного объекта в список свободных

glEnable(GL_TEXTURE_2D);

glTexCoord2d(u,v);

glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST);

glDeleteTextures(1,&texture);

36 Генерация текстурных координат

Генерация текстурных координат

Автоматическая генерация текстурных координат glTexGen{ifd}[v]() Режимы генерации координат: GL_OBJECT_LINEAR GL_EYE_LINEAR GL_SPHERE_MAP Координаты считаются как расстояние от заданной плоскости Ax+By+Cz+D=0

37 Композиты

Композиты

38 Композирование

Композирование

Compositing n. : The combining of two or more separately prepared images into one, usually through pixel-by-pixel transparency (or alpha) computation, and sometimes with z comparison. Also, composit v.t. : to perform compositing; adj. : being composited; n. : the result of compositing.

39 Композирование: Определение

Композирование: Определение

Композирование Объединение двух или более независимо подготовленных изображений в одно изображение, обычно с помощью попиксельного вычисления полупрозрачности (альфа-канал), иногда с учетом глубины (z-координаты) Смешение, Монтаж (Compositing)

40 Альфа-канал

Альфа-канал

Кодирует информацию о покрытии пикселя: ? = 0 : нет покрытия (прозрачный) ? = 1 : полное покрытие (непрозрачный) 0 < ? < 1 : частичное покрытие (полупрозрачный) Пример: ? = 0.3

41 Композирование с альфа-каналом

Композирование с альфа-каналом

Альфа-канал управляет линейной интерполяцией фоновых и передних пикселей при композировании

42 Полупрозрачные объекты

Полупрозрачные объекты

Предложим, мы рисуем изображение А поверх B поверх фона G Насколько A блокирует B ? ?A Насколько B видно через A? 1-?A Насколько G видно через A и B ? (1-?A) (1-?b)

43 Непрозрачные объекты

Непрозрачные объекты

Как мы можем комбинировать два частично перекрытых пикселя? 3 возможных цвета (0, A, B) 4 региона (0, А, B, AB)

44 Композитная алгебра Портера-Даффа

Композитная алгебра Портера-Даффа

12 возможных комбинаций

45 Оператор Over

Оператор Over

46 Композирование в OpenGL

Композирование в OpenGL

Включить режим композирования glEnable(GL_BLEND) Задать функции источника и приемника glBlendFunc(source_function, dest_function) Пример: оператор A over B glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) Задать альфа-канал в вершинах или в текстуре glColor(R,G,B,A); Выключить режим композирования glDisable(GL_BLEND);

47 Итоги

Итоги

Задача растеризации Найти пиксели (фрагменты), соответствующие примитиву и вычислить их цвет в соответствии с моделью освещения, текстурой, операцией композирования Текстурирование Отображение изображения на поверхность модели Различные виды текстурирования Композирование Способ комбинации пикселей растеризуемого примитива и фона Композитная алгебра

«Растеризация Текстуры Композиты»
http://900igr.net/prezentacija/informatika/rasterizatsija-tekstury-kompozity-118139.html
cсылка на страницу

Без темы

778 презентаций
Урок

Информатика

130 тем
Слайды
900igr.net > Презентации по информатике > Без темы > Растеризация Текстуры Композиты