Основы аппаратной реализации графического конвейера

Слайд 2

Слайд 3

Слайд 4

Основы аппаратной реализации графического конвейера: геометрический и пиксельный шейдеры

Основы аппаратной реализации графического конвейера: геометрический и пиксельный шейдеры

Слайд 5

Шейдер (англ. Shader) — это программа, используемая в трёхмерной графике, предназначенная

Шейдер (англ. Shader) — это программа, используемая в трёхмерной графике, предназначенная

для одной из ступеней графического конвейера, для определения финишных параметров объекта или изображения. Шейдер отвечает за функцию описания поглощения и рассеяния света, наложения текстуры, а также формирует отражение и преломление, затенение, смещение поверхности и определяет эффекты пост-обработки. Программируемые шейдеры гибки и эффективны. Сложные с виду поверхности могут быть визуализированы при помощи простых геометрических форм. Например, шейдеры могут быть использованы для рисования поверхности из трёхмерной керамической плитки на абсолютно плоской поверхности.
Типы шейдеров: вершинные, геометрические и фрагментные (пиксельные).
вершинный шейдер (Vertex Shader) - управляет данными, отвечающими за вершины многогранников. Такими данными, являются координаты вершины в пространстве, текстурные координаты, тангенс-вектор, вектор бинормали, вектор нормали. При помощи вершинного шейдера происходит видовое и перспективное преобразования вершин, генерации текстурных координат, расчета освещения и т. д.
геометрический шейдер (Geometry Shader) - в отличие от вершинного шейдера, способен обработать не только одну вершину, но и целый примитив. Это может быть отрезок (две вершины) и треугольник(три вершины), а при наличии информации о смежных вершинах (adjacency) может быть обработано до шести вершин для треугольного примитива. Кроме того геометрический шейдер способен самостоятельно формировать примитивы, не используя главный процессор. Впервые геометрический шейдер начал использоваться на видеокартах Nvidia 8-й серии.
фрагментный - пиксельный шейдер (Pixel Shader) - работают с фрагментами изображения. Фрагментом изображения в данном случае является пиксел, а сам шейдер определяет набор атрибутов, таких как цвет, глубина, текстурные координаты. Фрагментный шейдер используется на последнем этапе графического конвейера для формирования фрагмента изображения.
Слайд 6

Архитектура графических процессоров с шейдерами 4 версии

Архитектура графических процессоров с шейдерами 4 версии

Слайд 7

Слайд 8

Слайд 9

Слайд 10

Слайд 11

Слайд 12

Слайд 13

Слайд 14

Слайд 15

OpenGL OpenGL – это кросс-платформенная программная библиотека функций для создания интерактивных

OpenGL

OpenGL – это кросс-платформенная программная библиотека функций для создания интерактивных

2D и 3D приложений.
Является отраслевым стандартом с 1992.
Основой стандарта стала библиотека IRIS GL, разработанная фирмой Silicon Graphics Inc.
Основная функция: интерактивная визуализация трехмерных функций.
Слайд 16

OpenGL проста для изучения Аналогичные библиотеки: DirectX, Java 3D OpenGL –

OpenGL проста для изучения
Аналогичные библиотеки: DirectX, Java 3D
OpenGL
– Стабильность (с

1992 г
– Переносимость: Независимость от оконной и операционной системы
– Легкость применения: простой интерфейс, открытость
Слайд 17

OpenGL – прослойка между программой и драйвером видеокарты

OpenGL – прослойка между программой и драйвером видеокарты

Слайд 18

Слайд 19

Слайд 20

Слайд 21

Слайд 22

Слайд 23

Слайд 24

Слайд 25

Слайд 26

Слайд 27

Слайд 28

Слайд 29

Слайд 30

Слайд 31