Приставки
Nintendo (Dendy)
Nintendo 64
Sega Genesis
Sega CD / 32x
Master System
Super Nintendo
Turbo Grafx 16
Sega Saturn
Sony PlayStation
GameBoy Advance
GameBoy / Color
Game Gear
Atari
Другие

Утилиты
Системные утилиты
GoodXXXX
Sega CD / 32x
Nintendo 64
Переводы, хакинг
Музыка

Мир приставочных игр

Версия 2.00a

Leonis © 2002-2009
Команда Новости Помощь Ссылки
ПОМОЩЬ
Литература про игры
Предыдущая Следующая

□ закрашивание объектов и полигонов цветом;

□ установка освещения;

□ работа с матричными преобразованиями;

□ любые виды объектной анимации;

□ текстурная анимация;

□ наложение текстур;

□ смешивание текстур;

□ текстурирование ландшафтов;

□ любые размытые и искаженные изображения;

□ любимый некоторыми компаниями эффект черно-белых изображений;

Графический конвейер 277

□ пиксельные взрывы и эффекты;

□ пар, туман, огонь, вода, облака, зеркала, отражение;

□ все виды bump mapping;

□ а также многое, многое, многое другое.

15.8. Графический конвейер

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

Рис. 15.6. Графический конвейер

278 Основы программирования трехмерной графики

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

Операции, проводимые вершинным шейдером, зависят от тех задач, которые ставит сам программист, написавший шейдерную программу на языке НЬБЬ, но как минимум происходят все матричные преобразования (мировые, видовые и проекционные), нормализация и установка освещения. На выходе вершинного шейдера поток имеющихся данных проходит этап растеризации и интерполяции.

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

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


Предыдущая Следующая

Горяченькое

Друзья

Hosted by uCoz