Благодарности 1
Введение 2
На кого рассчитана книга 2
Как построена книга 3
Требования к компьютеру и программному обеспечению 5
ЧАСТЬ I. ОБЩИЕ СВЕДЕНИЯ 7
Глава 1. DirectX 9
Состав DirectX 9
DirectX или OpenGL? 10
Глава 2. Среда разработки Borland Delphi 11
Структура среды разработки 11
Первое приложение 12
Глава 3. Библиотека COM 14
COM или DLL? 14
Объекты и интерфейсы 15
Интерфейс IUnknown 15
Уникальные идентификаторы 16
Результат HResult 17
Инициализация библиотеки COM и завершение работы с ней 19
Глава 4. Пишем COM-сервер 20
Создание COM-сервера 20
Регистрация COM-сервера 28
Клиентская часть 29
ИТОГИ 33
ЧАСТЬ II. DIRECTX GRAPHICS 35
Глава 5. Direct3D 37
Инициализация 37
Очистка устройства 41
Прорисовка сцены 42
Первый пример 43
Полноэкранный режим 49
Потеря устройства 52
Примитивы 54
Буфер вершин 54
Точка 56
Цвет 61
Пример анимации 62
Линии и последовательность линий 65
Треугольник и последовательности треугольников 68
От треугольника к прямоугольнику 74
Построения в пространстве 74
Матрицы 75
Сложение матриц и умножение на число 75
Перемножение матриц 76
Единичная матрица 76
Матрицы переноса (сдвига) 76
Матрицы вращения 77
Матрица масштабирования 78
Матрицы отражения 78
Типы матриц Direct3D 79
Функции Direct3D для работы с матрицами 81
Нормали 84
От теории к практике 85
Куб 89
Буфер глубины 96
Правила построения объектов 97
Источники света 103
Материал 107
Работа с материалом и источниками света 107
Туман 113
Работа с текстурой 118
Фильтрация текстур 122
Mesh-объекты 126
Несколько объектов одновременно 127
Работа с текстом на плоскости и в пространстве 135
Подсчет числа кадров в секунду 142
Несколько текстур на одном объекте 145
Сферические текстурные координаты 147
Создаем туннель 150
Прозрачность 151
Мультитекстурирование 155
Motion Blur 157
Шейдеры 162
Основные сведения 162
Введение в HLSL 164
Вершинные шейдеры 170
Пиксельные шейдеры 179
Работа с текстурой 181
Глава 6. DirectDraw 184
Обзор библиотеки 184
Инициализация 185
Первый пример 185
Уровни взаимодействия 189
Полноэкранный режим работы 191
Поверхности 192
Рисуем на поверхности 194
Блиттинг 196
Переключение страниц 197
Потеря доступа к поверхности 198
Цветовые ключи 203
Палитра 205
Прямой доступ к поверхности 205
Огонь 206
Оконный режим работы 213
Оверлеи DirectX 218
ИТОГИ 235
ЧАСТЬ III. DIRECTSOUND 237
Глава 7. Общие сведения 239
Область применения 239
Достоинства 239
Недостатки 239
Принцип работы 240
Уровни взаимодействия 240
Глава 8. Вывод звука 242
Интерфейсы 242
Создание буферов 253
Потеря буферов 253
Звуковые эффекты 254
Классы TdxSound и TdxSoundManager 256
Пример использования классов TdxSound и TdxSoundManager 282
Глава 9. Захват звука 310
Интерфейсы 310
Буфер захвата 311
Захват аудио 313
Класс TdxSoundCapture 315
Пример использования класса TdxSoundCapture 321
ИТОГИ 326
ЧАСТЬ IV. DIRECTMUSIC 327
Глава 10. Работа с MIDI и WAV-файлами 329
Интерфейсы 329
Порядок работы 334
Классы TdxMusicSegment и TdxMusicManager 336
Пример использования классов 346
ИТОГИ 351
ЧАСТЬ V. DIRECTINPUT 353
Глава 11. Общие сведения 355
Режимы работы 355
Уровни взаимодействия 356
Глава 12. Работа с устройствами ввода 357
Интерфейсы 357
Общий алгоритм работы 361
Клавиатура 362
Мышь 364
Джойстик 366
Класс TdxInputManager 368
Пример использования класса TdxInputManager 377
ИТОГИ 385
ЧАСТЬ VI. DIRECTSHOW 387
Глава 13. Основные сведения 389
Область применения 389
Поддерживаемые форматы 389
Фильтры и граф фильтров 390
Типы фильтров 392
Менеджер графа фильтров 393
Глава 14. Работа с MP3, AVI, MPEG и другими мультимедиаформатами 394
Интерфейсы 394
Интерфейс управления фильтром 395
Интерфейс управления контактом 395
Интерфейс построения графа фильтров 396
Интерфейс управления графом фильтров 397
Интерфейс управления позиционированием в потоке 397
Интерфейс управления выводом звука 400
Интерфейс управления механизмом событий 401
Интерфейс управления выводом видеоданных 403
Интерфейс перехвата кадра из потока видео 405
Алгоритм работы 408
Класс TdxMediaPlayer 410
Пример работы с классом TdxMediaPlayer 428
Глава 15. Захват аудио и видео 437
Захват видео 437
Захват звука 437
Интерфейсы 438
Перечисление устройств определенного класса 443
Режимы захвата и предварительного просмотра 445
Запись видео со звуком 447
Сжатие потоков аудио и видео 449
Страницы свойств 451
Алгоритм работы 455
Класс TdxCaptureManager 457
Пример использования класса TdxCaptureManager 477
ИТОГИ 486
Заключение 487
ПРИЛОЖЕНИЯ 489
Приложение 1. Интернет-ресурсы 491
Приложение 2. Описание содержимого компакт-диска 493
Список литературы 494
Предметный указатель 495
VIII Оглавление VII Оглавление