Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации [Андре Ламот] (pdf) читать постранично

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

TRICKS OF THE
3D GAME PROGRAMMING
GURUS
ADVANCED 3D GRAPHICS AND
RASTERIZATION

Andre LaMothe

SAMS

2O1 West 103rd Street,
Indianapolis, Indiana 462ЭО

ПРОГРАММИРОВАНИЕ
ТРЕХМЕРНЫХ ИГР
ДЛЯ WINDOWS
СОВЕТЫ ПРОФЕССИОНАЛА ПО
ТРЕХМЕРНОЙ ГРАФИКЕ И РАСТЕРИЗАЦИИ

ПРОГРАММИРОВАНИЕ
ТРЕХМЕРНЫХ ИГР
ДЛЯ WINDOWS
СОВЕТЫ ПРОФЕССИОНАЛА ПО ТРЕХМЕРНОЙ
ГРАФИКЕ И РАСТЕРИЗАЦИИ

Андре Ламот

Москва • Санкт-Петербург • Киев
2004

ББК 32.973.26-018.2.75
Л21
УДК 681.3.07
Издательский дом "Вильяме"
Зав, редакцией С.Н, Тригуб
Перевод с английского Р.Г. Имамутдиновой, канд. техн. наук И.В. Красикова,
А. Наумовца, Н.А. Ореховой, В.Н. Романова
Под редакцией канд. техн. наук Я. А Красикова
По общим вопросам обращайтесь в Издательский дом "Вильяме" по адресу:
info@williamspublishing.com, http://www.williamspublishing.com
Ламот, Андре.
Л21 Программирование трехмерных игр для Windows. Советы профессионала по
трехмерной графике и растеризации. : Пер. с англ. — М. : Издательский дом
"Вильяме", 2004. — 1424 с.: ил. — Парал. тит. англ.
ISBN 5-8459-0627-Х (рус,)
Данная книга представляет собой продолжение книги Андре Ламота Программирование игр
для Windows. Советы профессионала и посвящена созданию трехмерных игр. В книге освещены
различные аспекты разработки трехмерных игр, однако основное внимание уделяется вопросам программирования трехмерных игр — в частности, представления трехмерных объектов, их
визуализации с учетом свойств материала объектов, освещения, перспективы, а также таким
специфическим вопросам трехмерной визуализации, как создание различных визуальных спецэффектов и т.п. В книге также рассматриваются многие сопутствующие вопросы — создание
и применение звуковых эффектов и музыкального сопровождения, использование различных
форматов файлов и соответствующего инструментария.
Книга написана выдающимся специалистом в области программирования игр с многолетним стажем, и полезна как начинающим, так и профессиональным разработчикам игр для
Windows. Однако следует учесть, что она рассчитана в первую очередь на опытного специалиста, владеющего языком программирования C++, а также имеющего определенную математическую подготовку. Хотя данная книга может рассматриваться как отдельное издание, желательно приступать к ней после ознакомления с упомянутой ранее книгой.
ББК 32.973.26-018.2.75
Все названия программных продуктов являются зарегистрированными торговыми марками соответствующих фирм.
Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в какой бы то ни
было форме и какими бы то ни было средствами, будь то электронные или механические, включая фотокопирование и запись на магнитный носитель, если на это нет письменного разрешения издательства
Sams Publishing.
Authorized translation from the English language edition published by Sams Publishing, Copyright © 2003
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without
permission from the Publisher.
Russian language edition published by Williams Publishing House according to the Agreement with R&I Enterprises International, Copyright 2004
ISBN 5-8459-0627-Х (рус.)
ISBN 0-672-31835-0 (англ.)

© Издательский дом "Вильяме", 2004
© by Sams Publishing, 2003

Оглавление
Предисловие
Об авторе
О техническом редакторе
Благодарности
Введение

17
18
18
19
21

Часть I. Введение в программирование трехмерных игр

27

Глава 1, Основы программирования трехмерных игр
Глава 2. Краткий курс Windows и DirectX
Глава 3. Виртуальный компьютер для программирования трехмерных игр

29
79
119

Часть 11. Трехмерная математика и преобразования

219

Глава 4. Запутанный мир математики
Глава 5. Создание математической библиотеки
Глава 6. Введение в трехмерную графику
Глава 7. Визуализация трехмерных каркасных объектов

221
309
409
515

Часть 111. Основы трехмерной визуализации

627

Глава 8. Основы моделирования освещения и поверхностей тел
Глава 9. Интерполяционные методы затенения и аффинное отображение текстур
Глава 10. Отсечение в трехмерном пространстве
Глава 11. Организация буфера глубины и видимость

629
749
879
957

-.
Часть IV. Секреты трехмерной визуализации

1013

Глава 12. Методы сложного текстурирования
Глава 13. Алгоритмы разбиения пространства и определения видимости
Глава 14. Освещение и тени

1015
1143
1263

Часть V. Анимация, физическое моделирование и оптимизация 1309
Глава 15. Анимация, движение и обнаружение столкновений
Глава 16. Технологии оптимизации
Предметный указатель

1311
1359
1407

Содержание
Предисловие
Об авторе
О техническом редакторе
Благодарности
Введение

17
]8
18
J9
21

Часть I. Введение в программирование трехмерных игр

27

Глава 1. Основы программирования трехмерных игр
Краткое введение
Элементы двумерных и трехмерных игр
Общие советы по программированию игр
Использование инструментов
Редакторы трехмерных уровней
Использован ие ком п илятора
Пример трехмерной игры: Raiders 3D
Цикл событий
Внутренняя логика