Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #64, МАРТ 2006 г.

тяга к революциям

TONY (TONY@EYKONTECH.COM)

Спецвыпуск: Хакер, номер #064, стр. 064-012-3


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

на пути к фрагментному процессору

После обработки вершинным процессором данные геометрии сцены складируются в промежуточном буфере готовых вершин. Из вершин формируются треугольники, а из треугольников — их фрагменты. С точки зрения программ, выполняемых GPU, этот процесс незаметен, поскольку на вход пиксельному шейдеру, завершающему обработку, попадают видимые фрагменты треугольников, но ты должен понимать все происходящее внутри видеокарты.

Три готовые вершины образуют треугольник. Треугольник разбивается на фрагменты. Эти фрагменты проверяются на видимость на экране с помощью Z-теста (проверка на видимость), и уже видимые фрагменты попадают на вход фрагментной программе. Почему я заостряю твое внимание на этом процессе? Здесь есть одна тонкость. Ранее ты рассчитывал текстурные координаты для вершин, а фрагментному процессору достаются текстурные координаты для фрагментов. Откуда они берутся? Интерполированием по всему треугольнику, между текстурными координатами трех его вершин.

Назад на стр. 064-012-2  Содержание  Вперед на стр. 064-012-4