netlib.narod.ru | < Назад | Оглавление | Далее > |
Давным давно разработчики должны были полагаться на свое знание DOS, чтобы выдаивать из компьютеров всю вычислительную мощь до капли, дабы их игры работали плавно. Windows тогда была ориентированной на бизнес-приложения платформой, а в качестве игровой платформы была нежизнеспособна.
Через некоторое время вышла Windows 95, а затем появился DirectX (продукт, помогающий программистам в разработке игр) и Windows ворвалась на сцену разработки игр. Не имея больше причин соблюдать ограничения, накладываемые DOS (древней операционной системой во многом близкой Unix и Linux), программисты медленно переходили к созданию программ, работающих только под управлением Windows. Итак, мой программирующий друг, чтобы выжить в качестве программиста игр, вы должны знать основы программирования для DirectX.
Для этого и предназначена данная книга — она покажет вам основы (я действительно подразумеваю основы) использования DirectX в ваших собственных игровых проектах. Вы хотите знать, что такое DirectX? Хорошо...
Согласно введению из документации DirectX Software Development Kit (DX SDK) Microsoft DirectX — это набор низкоуровневых интерфейсов программирования приложений (API) для создания игр и других высокопроизводительных мультимедийных приложений. Они включают поддержку двухмерной (2D) и трехмерной (3D) графики, звуковых эффектов и музыки, устройств ввода и работы с сетью, например, для многопользовательских игр.
Как утверждается в SDK, DirectX является набором программных интерфейсов, которые помогут вам создавать высокопроизводительные игры и приложения. Теперь позвольте мне сказать чем DirectX не является.
DirectX не является пакетом для создания игр; он просто помогает в разработке приложений предоставляя вам API созданные для прямого взаимодействия с аппаратурой компьютера. Если оборудование поставляется вместе с драйверами для DirectX, вы получите доступ к поддерживаемым оборудованием возможностям аппаратного ускорения. Если функции аппаратного ускорения не доступны, DirectX имитирует их программно.
Это означает, что вы получаете согласованный интерфейс с которым работаете, и вам можно больше не беспокоиться о таких вещах, как возможности установленного оборудования. Если возможность не поддерживается установленным устройством, остается вероятность, что программа будет работать благодаря функциям программной эмуляции в DirectX. Ни суеты, ни путаницы; просто программируйте игру и будьте уверены, что она заработает на большинстве систем.
Новые версии DirectX выходят достаточно часто, и в них появляются новые возможности и улучшаются старые. Во время написания книги последней версией была девятая и именно на ней основан материал. В DirectX 9 входят следующие основные компоненты:
DirectX Graphics — cистема для трехмерной графики.
DirectX Audio — система для работы с музыкой и звуковыми эффектами.
DirectPlay — простейшая функциональность для работы с сетью (Интернет).
DirectInput — простой доступ к клавиатуре, мыши и джойстику.
DirectX SDK поставляется вместе с различными вспомогательными классами и библиотеками, такими как D3DX, делающими использование DirectX проще, за счет предоставления вам ряда удобных классов для работы. D3DX — замечательная библиотека и я буду использовать ее в этой книге везде где возможно.
Я не буду делать вид, что DirectX является чем то большим, чем он есть на самом деле. Как я уже упоминал, это только метод доступа к низкоуровневым функциям, а не пакет для создания игр. Теперь, когда вы уяснили этот факт, давайте перейдем к полезным занятиям — установим DirectX на вашей системе и настроим ваш компилятор для начала работы с SDK.
Перед началом работы с кодом и примерами из этой книги вы должны установить и настроить Microsoft DirectX 9 Software Developers Kit (SDK) на своем компьютере. Здесь есть два этапа — установка библиотек времени выполнения и установка компонентов SDK. Программа установки DirectX выполнит для вас эти два этапа вместе, а я упоминаю об этом, чтобы вы видели чего следует ожидать.
Библиотеки времени выполнения являются сердцем и душой компонентов DirectX. Библиотеки содержат код, зависящий от установленного в вашей системе оборудования. Создаваемые производителями оборудования, эти библиотеки либо распространяются как часть стандартного комплекта поставки DirectX, либо их можно получить у производителя (на установочном диске или через Интернет). Разработчики найдут в SDK исходные коды, заголовочные файлы и библиотеки. Установите эти файлы, настройте компилятор и можно двигаться дальше. Для разработчиков библиотеки поставляются в двух версиях: отладочной и дистрибутивной. Конечным пользователям (то есть тем людям, которые будут играть в вашу игру) необходимы только дистрибутивные версии. В чем же различие между дистрибутивными и отладочиными версиями — спростите вы. Читайте дальше и узнаете.
Когда вы устанавливаете SDK, вас спросят, какие версии библиотек вы хотите использовать — отладочные или дистрибутивные. Это важный вопрос, и вы должны понимать, что вам дает каждая из версий.
С одной стороны отладочная версия позволяет вам видеть что творится за кулисами сцены, но за счет скорости и размера. Дистрибутивная версия позволяет работать на полной скорости, но если в программе вдруг возникнет сбой, вы останетесь в неведении относительно вызвавших его причин. Я рекомендую использовать отладочные версии пока вы будете знакомиться с DirectX, и перейти к дистрибутивным версиям, когда вы приобретете опыт и вам будет нужна максимально возможная скорость.
Настало время приступить к делу. Вставьте прилагаемый к книге CD-ROM в привод вашего компьютера. Будет показана страница с лицензионным соглашением к книге «Программирование ролевых игр с DirectX, 2-е издание». Для продолжения щелкните по кнопке I Agree. Если интерфейс не появляется автоматически, вы можете запустить его вручную, выполнив следующие действия:
На панели задач Windows щелкните по кнопке Start (Пуск), в открывшемся меню выберите пункт Run (Выполнить), и в появившемся на экране диалоговом окне введите d:\start_here.html (где d: — это буква, назначенная в вашей системе приводу CD-ROM). Вместо этого вы можете запустить Windows Explorer (не Internet Explorer!) обычно расположенный в папке с программами меню Start. В расположенном слева списке папок щелкните по значку вашего CD-ROM и в открывшемся списке файлов дважды щелкните по файлу start_here.html.
Когда появится страница с лицензионным соглашением к книге «Программирование ролевых игр с DirectX, 2-е издание» щелкните для продолжения по кнопке I Agree. На экран будет выведен интерфейс работы с CD-ROM (показанный на рис. 1.1). Этот интерфейс предлагает вам различные возможности от просмотра кода до установки программ.
Рис. 1.1. Использование интерфейса CD-ROM для навигации по CD. Просматривайте исходный код или устанавливайте утилиты, приложения или игры
Для начала процесса установки щелкните по кнопке DirectX, а затем щелкните Install DirectX 9 SDK.
Хотя DirectMusic Producer и не является частью стандартной поставки DirectX SDK, он находится на сопроводительном диске CD-ROM (посмотрите приложение В, «Содержимое CD-ROM», чтобы узнать где именно находится этот пакет). Программа является утилитой для создания звуковых файлов во внутреннем формате DirectMusic (включая импорт MIDI-файлов), которые могут быть воспроизведены с помощью техники, описываемой в главе 4 «Воспроизведение звуков и музыки с DirectX Audio и DirectShow».
Для установки DirectMusic Producer можно воспользоваться программой установки содержимого CD-ROM, либо можно открыть расположенную на компакт-диске папку \DirectX\DirectMusic Producer и запустить программу Setup.exe. Далее следуйте инструкциям для установки и настройки согласно вашим предпочтениям.
Когда DirectX 9 и SDK установлены и корректно работают (убедиться в этом можно запустив какую-либо из прилагаемых к этой книге демонстрационных программ), вы готовы к добавлению в проект необходимых библиотек и заголовочных файлов.
В следующем разделе вы узнаете как выполнить настройку вашего компилятора, а сейчас взгляните на таблицу 1.1, где приведен список используемых в этой книге компонентов DirectX, а также включаемых файлов и библиотек которые надо указать в параметрах компиляции при создании нового проекта.
Таблица 1.1. Компоненты DirectX, включаемые файлы и библиотеки
Компонент | Включаемые файлы | Файлы библиотек |
Direct3D | d3d9.h | d3d9.lib |
D3DX | d3dx9.h | d3dx9.lib |
DirectInput | dinput.h | dinput8.lib |
DirectSound | dsound.h | dsound.lib |
DirectMusic | dmusici.h | dsound.lib |
DirectPlay | dpaddr.h, dplay8.h | dplay.lib |
DirectShow | dshow.h | strmiids.lib |
netlib.narod.ru | < Назад | Оглавление | Далее > |