DirectX

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск
Microsoft DirectX
Тип Среда для приложений
Разработчик Microsoft
ОС Microsoft Windows
Версия 11 (22 октября 2009)
Лицензия Microsoft EULA
Сайт DirectX

DirectX — это набор API функций, разработанных для решения задач, связанных с игровым и видеопрограммированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. Пакет средств разработки DirectX под Microsoft Windows бесплатно доступен на сайте Microsoft. Зачастую свежие версии DirectX поставляются вместе с игровыми приложениями, так как DirectX API обновляется достаточно часто, и версия, включённая в ОС Windows, обычно является далеко не самой новой.

Содержание

DirectX API

Практически все части DirectX API представляют собой наборы COM-совместимых объектов.

В целом, DirectX подразделяется на:

  • DirectX Graphics, набор интерфейсов, ранее (до версии 8.0) делившихся на:
    • DirectDraw: интерфейс вывода растровой графики. (Его разработка давно прекращена)
    • Direct3D (D3D): интерфейс вывода трёхмерных примитивов.
  • DirectInput: интерфейс, используемый для обработки данных, поступающих с клавиатуры, мыши, джойстика и пр. игровых контроллеров.
  • DirectPlay: интерфейс сетевой коммуникации игр.
  • DirectSound: интерфейс низкоуровневой работы со звуком (формата Wave)
  • DirectMusic: интерфейс воспроизведения музыки в форматах Microsoft.
  • DirectShow: интерфейс, используемый для ввода/вывода аудио и/или видео данных.
    • DirectX Instruments — технология, позволяющая на основе мультимедийного API DirectX создавать и использовать программные синтезаторы. В отличие от DX-плагинов, такие программы могут полностью управляться по MIDI и служат главным образом не для обработки, а для синтеза звука. Технология DXi была популярна в 2001—2004 гг., особенно в программных продуктах Cakewalk, но со временем проиграла «войну форматов» технологии VST от Steinberg.
  • DirectSetup: часть, ответственная за установку DirectX.
  • DirectX Media Objects: реализует функциональную поддержку потоковых объектов (например, кодировщики/декодировщики)
  • Direct2D : интерфейс вывода двумерной графики

История

Изначально нацеленный на разработку видеоигр, DirectX стал популярен и в других областях разработки программного обеспечения. К примеру, DirectX, наряду с OpenGL, получил очень широкое распространение в инженерном/математическом ПО.

В 1994 году Microsoft была практически готова выпустить следующую версию Windows — Windows 95. Главным фактором, определяющим, насколько популярна будет новая ОС, являлся набор программ, которые можно будет запускать под её управлением. В Microsoft пришли к выводу, что, пока разработчики видят DOS более подходящей для написания игровых приложений, коммерческий успех новой ОС весьма сомнителен.

DOS позволяла разработчику получить прямой доступ к видеокарте, клавиатуре/мыши/джойстику и прочим частям системы, в то время как Windows 95, с её защищённой моделью памяти, предоставляла более стандартизованный, но в то же время весьма ограниченный доступ к устройствам. Microsoft нуждалась в новом способе дать разработчику всё, что ему необходимо. Айслер (Eisler), Сэйнт Джон (St. John), и Энгстром (Engstrom) решили эту проблему, назвав само решение DirectX.

Первый релиз DirectX был выпущен в сентябре 1995 года, под названием «Windows Game SDK».

Ещё до появления DirectX, Microsoft включила OpenGL в ОС Windows NT. Direct3D позиционировался как замена OpenGL в игровой сфере. Отсюда берёт своё начало «священная война» между сторонниками кросс-платформенной OpenGL и доступной лишь в Windows (в т.ч. Windows NT) Direct3D. Так или иначе, остальные части DirectX очень часто комбинируются с OpenGL в компьютерных играх, так как OpenGL как таковой не подразумевает функциональность уровня DirectX (например, доступ к клавиатуре/джойстику/мыши, поддержка звука, игры по сети и т. д.).

DirectX является базой для Xbox API. Xbox API схож с DirectX 8.1, но обновление версии, как и на других консолях того времени, невозможно.

В 2002 году Microsoft выпустила DirectX 9 с улучшенной и расширенной поддержкой шейдеров. С 2002 года DirectX неоднократно обновлялся. В августе 2004 года в DirectX была добавлена поддержка шейдеров версии 3.0 (DirectX 9.0c).

В апреле 2005 интерфейс DirectShow был перемещён в Microsoft Platform SDK.

Хронология версий DirectX

Версия DirectX Логотип Номер версии Операционная система Дата релиза
DirectX 1.0 4.02.0095 Windows 95a 30 сентября 1995
DirectX 2.0 / 2.0a   4.03.00.1096 Windows 95 OSR 2 и Windows NT младше 4.0 5 июня 1996
DirectX 3.0 / 3.0a   4.04.0068 / 69 Windows 95 OSR 2.5 и Windows NT 4.0 SP3
последняя поддерживаемая версия DirectX для Windows NT 4.0
15 сентября 1996
DirectX 4.0<   не выпущен    
DirectX 5.0   4.05.00.0155 (RC55) Доступен как бета для Windows NT 4.0 16 июля 1997
DirectX 5.0   4.05.01.1721 / 1998 Windows 98 5 мая 1998
DirectX 6.0   4.06.00.0318 (RC3) Windows 98 SE
последняя поддерживаемая версия DirectX Media для Windows NT 4.0 а также он был в Dreamcast
7 августа 1998
DirectX 6.1   4.06.02.0436 (RC0) Windows 95/98/98SE 3 февраля 1999
DirectX 7.0 4.07.00.0700 (RC1) Windows 2000 и Windows ME 22 сентября 1999
DirectX 7.0a   4.07.00.0716 (RC1) Windows 95/98/98SE/2000 1999
DirectX 8.0 4.08.00.0400 (RC10) Windows 95/98/98SE/ME/2000 30 сентября 2000
DirectX 8.0a   4.08.00.0400 (RC14) Последняя поддерживаемая версия DirectX для Windows 95 7 ноября 2000
DirectX 8.1   4.08.01.0810
4.08.01.0881 (RC7)
Windows XP 12 ноября 2001
DirectX 8.1b   4.08.01.0901   ???, 2002
DirectX 8.2   4.08.02.0134 (4.09.0000.0134)   ???, 2002
DirectX 9.0 4.09.0000.0900 Windows Server 2003 24 декабря 2002
DirectX 9.0a   4.09.0000.0901   26 марта 2003
DirectX 9.0b   4.09.0000.0902 (RC2)   13 августа 2003
DirectX 9.0c   4.09.0000.0904 (RC0) Windows XP SP2
последняя поддерживаемая версия DirectX для Windows 98SE и Windows Me
9 августа 2004
DirectX 9.0c   4.09.0000.0904 Xbox 360
Совместим со всеми версиями ОС Windows, с которыми совместим 9.0c(RC0)
9 декабря 2005
DirectX 9.0L (включен в состав Windows Vista)   4.09.0000.0905 (?) Предоставляет дополнительные интерфейсы IDirect3D9Ex и IDirect3DDevice9Ex с функциональностью, доступной лишь через LDDM-драйвера ОС Windows Vista.
DirectX 10 (включен в состав Windows Vista) 6.0.6000.16386 Первая версия для Windows Vista. Информация по Direct3D10
10 ноября 2006
DirectX 10.1   6.00.6001.18000 Service Pack 1 для Windows Vista, Windows Server 2008 4 февраля 2008
DirectX 11 (включен в состав Windows 7) 6.01.7600.16385 Windows Vista Service Pack 2, Windows 7
Официальный анонс состоялся на Gamefest 2008. Информация по Direct3D11
22 июля 2009

Совместимость

Многие современные устройства имеют только DirectX-совместимые драйвера, иными словами, пользователь должен установить DirectX для использования всех возможностей устройства. На данный момент система обновления драйверов Windows Update позволяет загружать только необходимые библиотеки, а не весь драйвер целиком.

DirectX обратно совместим с предыдущими версиями. Если приложение/игра использует DirectX 6.0, оно будет работать и при установленном DirectX 9.0. Но вышесказаное распространяется только на версию DirectX ниже 10.0. Версия DirectX 10.0 несовместима со всеми предыдущими, но совместима со всеми последующими.

Поддерживаемые операционные системы:

  • Windows 98, Windows 98 Second Edition;
  • Windows 2000, Windows 2000 Advanced Server, Windows 2000 Professional Edition, Windows 2000 Server, Windows 2000 Service Pack 2, Windows 2000 Service Pack 3, Windows 2000 Service Pack 4;
  • Windows Server 2003, Windows Server 2003 Service Pack 1, Windows Server 2003 Datacenter x64 Edition, Windows Server 2003 Enterprise x64 Edition, Windows Server 2003 Standard x64 Edition, Windows Small Business Server 2003;
  • Windows XP, Windows XP 64-bit, Windows XP Home Edition, Windows XP Media Center Edition, Windows XP Professional Edition, Windows XP Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3, Windows XP Starter Edition, Windows XP Tablet PC Edition;
  • Windows Vista.
  • Windows 7

Будущее DirectX

Последней выпущенной версией является DirectX 11; до выпуска Service Pack 1 на Windows Vista был установлен DirectX 10, изначально называвшийся «Windows Graphics Foundation», позднее он был переименован. Изменения в DirectX 10.1, в отличие от DirectX 10, касаются графической составляющей — Direct3D. DirectX 10 представляет собой часть ОС Windows Vista и использует отличную от DirectX 9.0 модель видео-драйвера. DirectX 10 выдвигает набор требований к аппаратной части — минимальный стандарт функциональности, необходимой для того, чтобы аппаратное устройство было DirectX-совместимым. В августе 2008 был анонсирован DirectX 11. Были озвучены нововведения, которые войдут в Direct3D11. Предварительная версия будет доступна в конце декабря с обновлением DirectX SDK — будут доступны вся соответствующая документация и примеры.

XNA — другой инструмент разработки от Microsoft, упрощающий разработку игровых и мультимедиа-приложений, предоставляющий удобный путь интеграции с DirectX, HLSL и др. инструментами, собранными в единую систему. Последние 2 года компания Microsoft активно продвигает этот инструмент как средство разработки приложений для Xbox 360, PC и Zune.

См. также

Ссылки

Литература

  • Адамс Д. DirectX: продвинутая анимация. Комплект. — «КУДИЦ-ПРЕСС», 2004. — С. 480. — ISBN 5-9579-0025-7

Ссылки

ar:دايركت إكس

bs:DirectX ca:DirectX cs:DirectX de:DirectX en:DirectX es:DirectX et:DirectX fa:دیرکت‌ایکس fi:DirectX fr:DirectX he:DirectX hr:DirectX hu:DirectX id:DirectX it:DirectX ja:Microsoft DirectX ko:DirectX lt:DirectX mk:DirectX ml:ഡിറക്റ്റ്‌എക്സ് ms:DirectX nl:DirectX no:DirectX pl:DirectX pt:DirectX ro:DirectX sh:DirectX sk:DirectX sq:DirectX sr:DirectX sv:DirectX th:ไดเรกเอกซ์ tr:DirectX uk:DirectX zh:DirectX

Источник — «http://www.sbup.com/wiki/DirectX»
Личные инструменты

Served in 0.461 secs.