DirectX и Delphi. Разработка графических и мультимедийных приложений

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Рассмотрена разработка приложений с использованием технологии DirectX в среде программирования Borland Delphi. Подробно описаны все основные компоненты, входящие в состав DirectX: DirectX Graphics, DirectShow, DirectInput, DirectSound и DirectMusic. Показано создание собственных наборов классов, облегчающих работу с различными компонентами DirectX. На практических примерах рассмотрена работа с двумерной и трехмерной графикой, шейдеры и язык HLSL, различные цветовые эффекты, работа с текстурой, освещением и т. д. Уделено внимание выводу изображения в оверлейном режиме, механизмам захвата изображения (на примере работы с webкамерой) и захвата звука.

Благодарности 1
Введение2
На кого рассчитана книга2
Как построена книга3
Требования к компьютеру и программному обеспечению5
ЧАСТЬ I. ОБЩИЕ СВЕДЕНИЯ
7
Глава 1. DirectX
9
Состав DirectX9
DirectX или OpenGL?10
Глава 2. Среда разработки Borland Delphi
11
Структура среды разработки11
Первое приложение12
Глава 3. Библиотека COM
14
COM или DLL?14
Объекты и интерфейсы15
Интерфейс IUnknown15
Уникальные идентификаторы16
Результат HResult17
Инициализация библиотеки 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
Типы матриц Direct3D79
Функции Direct3D для работы с матрицами81
Нормали84
От теории к практике85
Куб89
Буфер глубины96
Правила построения объектов97
Источники света103
Материал107
Работа с материалом и источниками света107
Туман113
Работа с текстурой118
Фильтрация текстур122
Mesh-объекты126
Несколько объектов одновременно127
Работа с текстом на плоскости и в пространстве135
Подсчет числа кадров в секунду142
Несколько текстур на одном объекте145
Сферические текстурные координаты147
Создаем туннель150
Прозрачность151
Мультитекстурирование155
Motion Blur157
Шейдеры162
Основные сведения162
Введение в HLSL164
Вершинные шейдеры170
Пиксельные шейдеры179
Работа с текстурой181
Глава 6. DirectDraw
184
Обзор библиотеки184
Инициализация185
Первый пример185
Уровни взаимодействия189
Полноэкранный режим работы191
Поверхности192
Рисуем на поверхности194
Блиттинг196
Потеря доступа к поверхности198
Цветовые ключи203
Палитра205
Прямой доступ к поверхности205
Огонь206
Оконный режим работы213
Оверлеи DirectX218
ИТОГИ235
ЧАСТЬ III. DIRECTSOUND
237
Глава 7. Общие сведения
239
Область применения239
Достоинства239
Недостатки239
Принцип работы240
Уровни взаимодействия240
Глава 8. Вывод звука
242
Интерфейсы242
Создание буферов253
Потеря буферов253
Звуковые эффекты254
Классы TdxSound и TdxSoundManager256
Пример использования классов TdxSound и TdxSoundManager282
Глава 9. Захват звука
310
Интерфейсы310
Буфер захвата311
Захват аудио313
Класс TdxSoundCapture315
Пример использования класса TdxSoundCapture321
ИТОГИ326
ЧАСТЬ IV. DIRECTMUSIC
327
Глава 10. Работа с MIDI и WAV-файлами
329
Интерфейсы329
Порядок работы334
Классы TdxMusicSegment и TdxMusicManager336
Пример использования классов346
ИТОГИ351
ЧАСТЬ V. DIRECTINPUT
353
Глава 11. Общие сведения
355
Режимы работы355
Уровни взаимодействия356
Глава 12. Работа с устройствами ввода
357
Интерфейсы357
Общий алгоритм работы361
Клавиатура362
Мышь364
Джойстик366
Класс TdxInputManager368
Пример использования класса TdxInputManager377
ИТОГИ385
ЧАСТЬ VI. DIRECTSHOW
387
Глава 13. Основные сведения
389
Область применения389
Фильтры и граф фильтров390
Типы фильтров392
Менеджер графа фильтров393
Глава 14. Работа с MP3, AVI, MPEG и другими мультимедиаформатами
394
Интерфейсы394
Интерфейс управления фильтром395
Интерфейс управления контактом395
Интерфейс построения графа фильтров396
Интерфейс управления графом фильтров397
Интерфейс управления позиционированием в потоке397
Интерфейс управления выводом звука400
Интерфейс управления механизмом событий401
Интерфейс управления выводом видеоданных403
Интерфейс перехвата кадра из потока видео405
Алгоритм работы408
Класс TdxMediaPlayer410
Пример работы с классом TdxMediaPlayer428
Глава 15. Захват аудио и видео
437
Захват видео437
Захват звука437
Интерфейсы438
Перечисление устройств определенного класса443
Режимы захвата и предварительного просмотра445
Запись видео со звуком447
Сжатие потоков аудио и видео449
Алгоритм работы455
Класс TdxCaptureManager457
Пример использования класса TdxCaptureManager477
ИТОГИ486
Заключение487
ПРИЛОЖЕНИЯ489
Приложение 1. Интернет-ресурсы491
Приложение 2. Описание содержимого компакт-диска493
Список литературы494
Предметный указатель495

Author(s): Есенин Сергей
Publisher: БХВ-Петербург
Year: 2006

Language: Russian
Tags: Библиотека;Компьютерная литература;DirectX;