Эта книга представляет собой введение
Эта книга представляет собой введение в программирование интерактивной трехмерной компьютерной графики с использованием DirectX9.0, в котором основное ударение делается на разработку игр. Прочитав ее, вы изучите основы Direct3D, после чего сможете перейти к изучению и применению более сложных технологий. Раз вы держите в руках эту книгу, у вас есть начальное представление о том, что представляет собой DirectX. С точки зрения разработчика DirectX — это набор API (интерфейсов программирования приложений) для разработки мультимедйных приложений на платформе Windows. В этой книге мы сосредоточимся на ограниченном подмножестве DirectX, называемом Direct3D. Как видно из названия, Direct3D — это API, используемый для разработки приложений с трехмерной графикой.
Книга разделена на четыре части. В первой части исследуются математические инструменты, применяемые в остальных частях книги. Во второй части объясняются базовые технологии трехмерной графики, такие как освещение, текстурирование, альфа-смешивание и работа с трафаретами. Третья часть посвящена использованию Direct3D для реализации различных более интересных техник и приложений, таких как выбор объектов, визуализация ландшафтов, системы частиц, настраиваемая виртуальная камера, а также загрузка и визуализация трехмерных моделей (X-файлов). Темой четвертой части являются вершинные и пиксельные шейдеры, включая каркасы эффектов и новый (появившийся в DirectX 9.0) высокоуровневый язык шейдеров. Настоящее и будущее трехмерных игр неразрывно связано с использованием шейдеров, и, посвящая им целую часть, мы хотели получить книгу, соответствующую современному состоянию дел в программировании графики.
Новичкам лучше всего читать эту книгу с начала и до конца. Главы упорядочены таким образом, что сложность материала постепенно возрастает с каждой новой главой. Предложенный путь позволит избежать скачкообразного увеличения сложности, которое может оставить читателя в недоумении. Часто в отдельной главе мы используем техники и концепции, объясненные ранее. Поэтому, перед тем, как продолжить чтение, необходимо тщательно изучить материал текущей главы. Опытные читатели могут выбирать те главы, которые им интересны.
Наконец вы можете задаться вопросом — какие игры вы сможете разрабатывать после прочтения этой книги. Чтобы ответить на него лучше всего пролистать книгу и взглянуть на типы разрабатываемых приложений. Это поможет вам представить типы игр, которые можно разработать, основываясь на рассматриваемых в книге методах и вашей собственной изобретательности.