- DirectX
-
Microsoft DirectX Тип Среда для приложений
Разработчик Операционная система Последняя версия Лицензия Сайт DirectX (от англ. direct — прямой, непосредственный) — это набор API, разработанных для решения задач, связанных с программированием под Microsoft Windows. Наиболее широко используется при написании компьютерных игр. Пакет средств разработки DirectX под Microsoft Windows бесплатно доступен на сайте Microsoft. Зачастую обновленные версии DirectX поставляются вместе с игровыми приложениями.
Содержание
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.015 сентября 1996 DirectX 4.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 а также он был в Dreamcast7 августа 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 8 ноября 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 Me9 августа 2004 DirectX 9.0L 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. Информация по Direct3D1122 июля 2009 DirectX 11.1 (включен в состав Windows 8) [1] Windows 8 26 октября 2012 Ключевые особенности версий
- DirectX 6.0 — мультитекстурирование
- DirectX 7.0 — аппаратная поддержка преобразований, обрезания и освещения
- DirectX 8.0 — шейдерная модель 1.1
- DirectX 8.1 — пиксельные шейдеры 1.4 и вершинные шейдеры 1.1
- DirectX 9.0 — шейдерная модель 2.0
- DirectX 9.0b — пиксельные шейдеры 2.0b и вершинные шейдеры 2.0
- DirectX 9.0c — шейдерная модель 3.0
- DirectX 9.0L — версия DirectX 9.0 для Windows Vista
- DirectX 10 — шейдерная модель 4.0 (только Windows Vista, Windows 7, Windows 8)
- DirectX 10.1 — шейдерная модель 4.1 (только Windows Vista, Windows 7, Windows 8)
- DirectX 11 — шейдерная модель 5.0 (только Windows Vista, Windows 7, Windows 8)
Совместимость
Многие современные устройства имеют DirectX-совместимые драйверы, иными словами, пользователь должен установить DirectX для использования всех возможностей устройства. На данный момент система обновления драйверов Windows Update позволяет загружать только необходимые библиотеки, а не весь драйвер целиком.
Поддерживаемые операционные системы:
- Windows 95, Windows 98, Windows 98 Second Edition, Windows Millenium Edition;
- Windows NT 4.0, 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;
- Windows Server 2008, Windows Server 2008 R2;
- Windows 8.
Будущее 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-совместимым.
XNA — другой инструмент разработки от Microsoft, упрощающий разработку игровых и мультимедиа-приложений, предоставляющий удобный путь интеграции с DirectX, HLSL и др. инструментами, собранными в единую систему. Последние 2 года компания Microsoft активно продвигает этот инструмент как средство разработки приложений для Xbox 360, PC и Zune.
DirectX 11.1 включен в состав Windows 8. Поддерживает WDDM 1.2 для увеличения производительности, с улучшенной интеграцией Direct2D, Direct3D, и DirectCompute, и включает в себя DirectXMath, XAudio2, и XInput библиотеки из XNA framework. Также есть возможность стереоскопического 3D для поддержки игр и видео.[2]
См. также
- GDI
- OpenGL
- Simple DirectMedia Layer
- X (DirectX) — формат файла для хранения 3D объектов, разработанный Microsoft для DirectX
- Direct3D 11 — версия, которая применяется в основном в Windows 7 (включена) и Windows Vista для приложений
- Список игр, поддерживающих DirectX 10
Литература
- Адамс Д. DirectX: продвинутая анимация. Комплект. — «КУДИЦ-ПРЕСС», 2004. — С. 480. — ISBN 5-9579-0025-7
Примечания
Ссылки
Программные интерфейсы и фреймворки Microsoft Windows Графика Проводник Windows • DirectX • Direct3D • GDI • Windows Presentation Foundation • Windows Color System • Windows Image Acquisition • Windows Imaging Component Звук DirectSound • DirectMusic • XACT • Speech API • MME Мультимедиа DirectShow • Windows Media • Media Foundation Веб MSHTML • MSXML • Платформа RSS для Windows • JScript • ActiveX • XMLHttpRequest • Гаджеты Доступ к данным Компоненты Microsoft Data Access • Extensible Storage Engine • ADO.NET • Sync Framework • Jet-механизм Сети Winsock (LSP) • Filtering Platform • NDIS • Windows Rally • Сервис фоновой интеллектуальой передачи данных • P2P API Коммуникации TAPI Администрирование Консоль Win32 • Windows Script Host • Инструментарий управления Windows • PowerShell • Планировщик задач • Offline Files • Теневое копирование • Windows Installer • Диспетчер ошибок Windows • Журнал событий Windows Модель компонентов COM • COM+ • DCOM • .NET Framework Библиотеки Microsoft Foundation Classes (MFC) • Active Template Library (ATL) • Windows Template Library (WTL) • Base Class Library (BCL) Разработка драйверов Windows Driver Model • Windows Driver Foundation (KMDF • UMDF) Безопасность CryptoAPI (CAPICOM) • Windows CardSpace • Data protection API • Security Support Provider Interface .NET .NET Framework • ASP.NET • ADO.NET • .NET Remoting • Windows Presentation Foundation • Windows Workflow Foundation • Windows Communication Foundation • Windows CardSpace • XNA Framework • Silverlight • Библиотека параллельного программирования Межпроцессное
взаимодействиеDynamic Data Exchange (DDE) • MSRPC • Именованные каналы Текст и
поддержка языковFramework Текстовых сервисов • Объектная модель текстов • Редактор метода ввода • Языковые пакеты • Многоязычный интерфейс Игры XNA Framework • DirectX Компоненты Microsoft Windows Основные Aero • ClearType • Диспетчер рабочего стола • DirectX • Панель задач (Пуск • Область уведомлений) • Проводник (Пространство имён • Специальные папки • Ассоциации файлов) • Windows Search (Smart folders • iFilters) • GDI • WIM • SMB • .NET Framework • XPS • Active Scripting (WSH • VBScript • JScript) • COM (OLE • DCOM • ActiveX • Структурированное хранилище • Сервер транзакций) • Теневая копия • WDDM • UAA • Консоль Win32
Службы
управленияАрхивация и восстановление • COMMAND.COM • cmd.exe • Средство переноса данных • Просмотр событий • Установщик • netsh.exe • PowerShell • Отчёты о проблемах • rundll32.exe • Программа подготовки системы (Sysprep) • Настройка системы (MSConfig) • Проверка системных файлов • Индекс производительности • Центр обновления • Восстановление системы • Дефрагментация диска • Диспетчер задач • Диспетчер устройств • Консоль управления • Очистка диска • Панель управления (элементы)
Приложения Контакты • DVD Maker • Факсы и сканирование • Internet Explorer • Журнал • Экранная лупа • Media Center • Проигрыватель Windows Media • Программа совместной работы • Центр устройств Windows Mobile • Центр мобильности • Экранный диктор • Paint • Редактор личных символов • Удалённый помощник • Распознавание речи • WordPad • Блокнот • Боковая панель • Звукозапись • Календарь • Калькулятор • Ножницы • Почта • Таблица символов • Исторические: Movie Maker • NetMeeting • Outlook Express • Диспетчер программ • Диспетчер файлов • Фотоальбом
Игры Ядро ОС Ntoskrnl.exe • Слой аппаратных абстракций (hal.dll) • Бездействие системы • svchost.exe • Реестр • Службы • Диспетчер управления сервисами • DLL (формат модулей) • PE • NTLDR • Диспетчер загрузки • Программа входа в систему (winlogon.exe) • Консоль восстановления • Windows RE • Windows PE • Защита ядра от изменений
Службы Autorun.inf • Фоновая интеллектуальная служба передачи • Файловая система стандартного журналирования • Отчёты об ошибках • Планировщик классов мультимедиа • Теневая копия • Планировщик задач • Беспроводная настройка
Файловые
системыReFS • NTFS (Жёсткая ссылка • Точка соединения • Точка монтирования • Точка повторной обработки • Символьная ссылка • TxF • EFS) • WinFS • FAT • exFAT • CDFS • UDF • DFS • IFS
Сервер Active Directory • Службы развёртывания • Служба репликации файлов • DNS • Домены • Перенаправление папок • Hyper-V • IIS • Media Services • MSMQ • Защита доступа к сети (NAP) • Службы печати для UNIX • Удалённое разностное сжатие • Службы удаленной установки • Служба управления правами • Перемещаемые профили пользователей • SharePoint • Диспетчер системных ресурсов • Удаленный рабочий стол • WSUS • Групповая политика • Координатор распределённых транзакций
Архитектура Безопасность BitLocker • Защитник • Предотвращение выполнения данных • Обязательный контроль целостности • Защищенный канал данных • UAC • UIPI • Брандмауэр • Центр обеспечения безопасности • Защита файлов
Совместимость Подсистема UNIX (Interix) • Виртуальная машина DOS • Windows on Windows • WOW64
Microsoft ПО Windows (Основные компоненты) • Office • Visual Studio • Expression • Silverlight • Dynamics • Money • Encarta • Student • Works • Microsoft Security Essentials
Серверное ПО •SQL Server • IIS • Exchange • BizTalk • Commerce • Forefront TMG • Systems Management • System Center • Licensing Services
Технологии Active Directory • DirectX • .NET • Windows Media • PlaysForSure • Application Virtualization
Интернет Windows Live • Office Live • MSNBC • msnbc.com • ninemsn • MSN • Bing • Bing Bar • EntityCube • Hotmail • Live Messenger • Live Spaces • Groups • Live ID • Ignition • CodePlex • HealthVault • Skype • SkyDrive • Vine • Zune Marketplace
Игры Microsoft Studios • MSN Games • XNA • Xbox • Xbox 360 (S) • Kinect • Xbox Live (Arcade • Marketplace) • Games for Windows (Live • Tray and Play) • Live Anywhere
Аппаратное
обеспечениеОбразование Лицензирование Подразделения Совет директоров Категории:- Программное обеспечение по алфавиту
- API
- Microsoft Windows
- Графические библиотеки
- Библиотеки трёхмерной графики
- DirectX Graphics, набор интерфейсов, ранее (до версии 8.0) делившихся на:
Wikimedia Foundation. 2010.