Конгер Д.
Физика для разработчиков компьютерных игр
стр. 128

проекция области видимости на экран может быть квадратной. Однако весьма маловероятно, что экран — квадратный. Поэтому конвейер должен промасштабировать область видимости перед выводом ее на экран.

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

Замечание

Когда конвейер выполняет растеризацию ЗО-объектов, он делает это на неактивной видеостранице. Когда растеризация заканчивается, программа делает неактивную страницу активной, а активную - неактивной.

Рендеринг в 3D

Познакомившись с ЗБ-преобразованиями и конвейером, вы готовы приступить к созданию собственных ЗО-объектов и отображению их на экране. Чтобы наша первая вылазка в мир 3D была менее пугающей, мы рассмотрим две программы, основанные на программе отображения вращающегося треугольника из главы 4.

Пример 1: Вращающийся треугольник в 3D

В примере программы из главы 4 было показано, как описать треугольник в Direct3D. Там же демонстрировалась реализация вращения треугольника в 2D. Если вы вернетесь к главе 4 и внимательно изучите программу, то увидите, что на самом деле она работала в 3D, просто мы не обращали на это внимания. Мы проигнорировали преобразования в ЗБ-конвейере, и хотя код для выполнения глобального преобразования, преобразования просмотра и преобразования проецирования был в программе, мы его не рассматривали. Собственно говоря, при помощи инструментов вроде Di-rect3D работать с ЗО-графикой часто бывает так же просто, как и с 2D.

Чтобы было проще увидеть, что программа отображения вращающегося треугольника на самом деле работает в 3D, мы модифицируем ее так, что треугольник будет вращаться вокруг осей х, у и z.

Код этой программы вы найдете на компакт-диске в папке Sour-ce\Chapter05\TriangleSpin3D. В этой же папке в подпапке Bin содержится исполняемый файл этой программы TriSpin3D.exe. Если вы хотите просто запустить эту программу и посмотреть, как она работает, запустите этот файл.








Новости
Вышел новый тизер Project Melies от разработчиков Layers of Fear
Bloober Team и Gun Media представили новый тизер хоррора Project Melies, посвящённого немому кино.
В популярной игре спрятали кошелек с деньгами
Как написал Криси в своем блоге на Hackernoon, пароль от кошелька был разделен на две части и спрятан на две разные планеты виртуальной вселенной No Man’s Sky.