Что такое DirectX?



Немного о DirectX

Пока в природе не существовало DirectX, большинство игровых программ для персональных компьютеров работали под управлением Ms Dos.
Чтобы запустить такие игры, пользователям приходилось бороться, в прямом смысле этого слова, с конфигурационными файлами системы, такими как AUTOEXEC.BAT, CONFIG.SYS и с настройками драйверов, типа EMM386.EXE и т.д... лишь ради того, чтобы получить несколько дополнительных свободных байт, из доступных 640Кб базовой памяти, даже, если на компьютере установлено 16Мб оперативной памяти.

Жизнь разработчиков программного обеспечения была не сахар, потому, что для преодоления ограничения в 640Кб, приходилось использовать различные драйверы для каждой разновидности видеоадаптеров и звуковых карт.

С выходом в свет технологии компании Microsoft DirectX для Windows 95 все указанные выше проблемы становятся историей.

Теперь разработчики могут использовать аппаратно незавичимый интерфейс программирования, с помощью которого создаются новые игры, для участия в которых, пользователю достаточно лишь вставить в устройство чтения компакт диск с данными и наслаждаться игрой. Теперь писать игры и играть в них стало гораздо приятнее.

Но разработка игр с использованием DirectX остается все еще непростой задачей. Иногда, все еще достаточно трудно найти грамотную документацию и начинающие разработчики тратят много времени на поиск знаний о том, как использовать такие новшества, как DirectDraw, Z-буферы или DirectSound, а также многие другие сложные, но полезные инструменты.

Цель этой статьи - помочь разработчикам, использующим DirectX, за счет нескольких советов, основанных на моем собственном опыте написания программ. Обычные пользователи смогут получить из этого обзора общее представление о том, что такое DirectX.

Если Вам нужна дополнительная документация, то ее Вы здесь не найдете, однако, несколько полезных советов и примеров можно получить, следуя по ссылкам, приведенным ниже.

Что такое DirectX ?

DirectX представляет собой набор из нескольких API (application programming interface - интерфейс прграммирования приложений), позволяющих разработчикам игр и других интерактивных приложений получать доступ к специфическим функциям аппаратного обеспечения, без необходимости написания аппаратно-зависимого программного кода. DirectX основан на наборе интерфейсов COM или классов. COM расшифровывается, как Common Object Model (Общая Модель Объектов), и представляет собой спецификацию интерфейса, в котором функции вызываются через указатели. Таким образом, объекты COM могут описываться такими языками программирования, как C/C++, Delphi или даже Basic. Все примеры, ссылка на которые была выше, написаны на C++, т.к. я пользуюсь именно этим языком. Интерфейс COM используется не только в DirectX, но и на уровне операционной системы в качестве модели объектов и является сердцем одной из самой широко применяемой технологии -- OLE (Objects Linking and Embedding - связывание и встраивание объектов).

Последняя версия DirectX имеет порядковый номер 5.0 и включает в себя следующие API:

DirectX 5.0 SDK (Software Development Kit - Набор разработчика программ), доступен для загрузки с сайта Microsoft по адресу http://www.microsoft.com/mediadev.

Справочник по DirectX для начинающих

Если Вы не являетесь разработчиком игровых программ, но Вам нравиться играть на персональном компьютере, Вы точно должны были слышать о DirectX. Почему?

Потому что DirectX широко используется в современном поколении компьютерных игр. Каждая игрушка, имеющая логотип "for Windows 95", прежде чем запуститься на Вашем компьютере, требует наличия установленного в системе DirectX. Вот почему, DirectX это не просто "нечто для программистов", это принципиально необходимое нечто для игроков.

В тоже время, если какая-то из таких современных игр установленна на Вашем компьютере, значит DirectX тоже установлен, и Вы можете узнать об этом, обратив внимание на несколько новых файлов, которые появились в директории Windows\System, например DDRAW.DLL или DPLAY.DLL. Это компоненты DirectX, которые используются всеми играми, установленными в Вашей системе и работающих через интерфейс DirectX.

DirectX используется для обработки событий, которые должны совершаться в каждой игре, таких, как вывод изображения на экран или считывание входных данных с клавиатуры, мыши или джойстика.

С появлением все большего и большего числа игр, использующих DirectX, пользователи замечают некоторые отличия, например:

Jose Carlos Ramos
Copyright (c) by iXBT, 1998