Частина інформації в цій статтізастаріла. Ви можете допомогти,оновивши її. Можливо,сторінка обговорення містить зауваження щодо потрібних змін.(квітень 2017)
DirectX — це набірAPI функцій, розроблених для простого і ефективного вирішення завдань, пов'язаних з ігровим і відеопрограмуванням підОСMicrosoft Windows. Найширше використовується при написаннівідеоігор. Пакет засобів розробки DirectX від Microsoft безкоштовно доступний на сайтіMicrosoft. Незважаючи на те, що зараз DirectX включений в стандартний набірПЗ Windows, свіжі версії DirectX часто поставляються разом з іграми. Це пов'язано з регулярним оновленнямAPI, і версія, включена в ОС Windows часто є не останньою. Найсвіжішою версією є DirectX 12.
DirectInput: інтерфейс для обробки даних, що поступають з клавіатури, миші, джойстика тощо ігрових контролерів.
DirectPlay: інтерфейс мережевої комунікації ігор.
DirectSound: інтерфейс низькорівневої роботи зі звуком (формату Wave).
DirectMusic: інтерфейс відтворення музики у форматах Microsoft.
DirectShow: інтерфейс для вводу/виводу аудіо- і/або відео- даних. DirectShow містить DirectX plugin для обробки аудіо сигналу іDirectX Video Acceleration для прискорення відтворення відео.
DirectSetup: частина, відповідальна за установку DirectX.
DirectX Media Objects: реалізує функціональну підтримку потокових об'єктів (наприклад, енкодери/декодери).
Від початку націлений на розробку відеоігор, DirectX став популярний і в інших областях розробки програмного забезпечення. Наприклад, DirectX, разом з OpenGL, набув дуже широкого поширення в інженерному/математичному ПЗ.
У1994 році Microsoft був практично готовий випустити наступну версію Windows —Windows 95. Головним чинником, що визначає наскільки популярною буде нова ОС, був набір програм, які можна буде запускати під її управлінням. У Microsoft прийшли до висновку, що, поки розробники бачатьDOS відповіднішою для написання ігрових застосунків, комерційний успіх новоїОС вельми сумнівний.
DOS дозволяла розробникові дістати прямий доступ до відеокарти, клавіатури/миші/джойстика і інших частин системи, тоді як Windows 95, з її захищеною моделлю пам'яті, надавала більш стандартизований, але водночас вельми обмежений доступ до пристроїв. Microsoft потребував нового способу дати розробникові все, що йому необхідне. Eisler, St. John, and Engstrom вирішили цю проблему, назвавши саме рішення «DirectX».
Перший реліз DirectX був випущений у вересні 1995 року, під назвою «Windows Game SDK».
Ще до появи DirectX, Microsoft включилаOpenGL в ОСWindows NT. Direct3D позиціонувався як заміна OpenGL в ігровій сфері. Звідси бере свій початок «священна війна» між прихильниками крос-платформової OpenGL і доступною лише в Windows Direct3D. Решта частин DirectX часто комбінується з графікою OpenGL у відеоіграх, оскільки OpenGL є лише графічнимAPI і не має аналогів до інших можливостей 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.
З січня 2008 в Інтернеті відкрився проект присвячений розробці DirectX10 дляWindows XP і по теперішній час на нім ведеться редагування і оптимізаціяDLL файлів DX10 для їх сумісності з Windows XP. Проте помітного результату це не дало (докладне пояснення див.Знайомимся з DirectX 10[Архівовано 2 вересня 2008 уWayback Machine.]). Хоча як приклад роботи, запускається і відмінно працюєCrysis з імітацією ефектів DX10, а так само зросла продуктивність вбенчмарках і деяких іграх.
Багато сучасних пристроїв мають тільки DirectX-суміснідрайвери, іншими словами, користувач повинен встановити DirectX для використання всіх можливостейпристрою. У цей час система оновлення драйверівWindows Update дозволяє завантажувати тільки необхідні бібліотеки, а не весь драйвер цілком.
DirectX зворотно сумісний з попередніми версіями. Якщозастосунок абогра використовує DirectX 6.0, вони працюватимуть і при встановленому DirectX 9.0. Кожна подальша версія DirectX включає всі попередні.
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 Starter Edition, Windows XP Tablet PC Edition;
Останньою поточною версією є DirectX 12, доService Pack 1 наWindows Vista стояв DirectX 10, що спочатку називався «Windows Graphics Foundation», але пізніше він був перейменований. DirectX 10 є частиною ОС Windows Vista і використовує відмінну від DirectX 9.0 модель управління. DirectX 10 надає набір вимог до апаратної частини, мінімальний стандарт функціональності, необхідної для того, щоб апаратний пристрій був DirectX-сумісним. Microsoft не так давно випустивService Pack 1 для Windows Vista, в який включений DirectX 10.1, зміни в DirectX 10.1 на відміну від DirectX 10 стосуються графічної складової — Direct3D.
Компанія Microsoft планує, що DirectX 11 буде готовий до моменту виходуService Pack 2 для Windows Vista в кінці 2008 року. У цю версію не буде включений метод трасування променів. Сумісність з картами DirectX 10 і 10.1, а також підтримка карт на базі DirectX 11
Повна підтримка (включаючи всі функції DX11-карт) в Windows Vista, а також майбутніх версіях Windows
Нова технологія прорахунку шейдерів версії 5.0, що дозволяє використовуватиGPU як паралельний процесор
Багатонитевої обробки ресурсів, що дозволяє максимально задіятибагатоядерні системи
Підтримка тесселляції, яка розмиває лінію між високоякісним передвізуалізованими сценами, що візуалізуються в реальному часі, це дозволяє розробникам ігор створювати більш згладжені моделі, які поблизу виглядають привабливіше для очей
Також в DirectX 11 буде включена можливість використання шейдерів відеокарти для арифметичних розрахунків, тобто буде включена технологія, подібна nVidia CUDA
XNA — інший інструмент розробки від Microsoft, що спрощує розробку ігрових і мультимедіа-застосунків, надає зручний шлях інтеграції з DirectX, HLSL і іншими інструментами, зібраними в єдину систему.
Починаючи з 2002 року, Microsoft випускає версії DirectX, сумісні з Microsoft.NET. Це дозволяє використовувати всі перевагикерованих мов (C# абоVisual Basic .Net) при розробці застосунків, які використовують DirectX. ЦейAPI відомий як «Managed DirectX». Заявлена продуктивність — 98 % від звичайної, некерованої версії.
Х файлами називають файли з розширенням.x що можуть містити меші, текстури, анімації та інші об'єкти задані користувачем. Підтримуються також ієрархії об'єктів таінстансинг[en] (багаторазові посилання на об'єкт замість збереження його копій. Вперше з'явилися у DirectX 2.0. З DirectX 3.0 була випущена також двійкова версія формату.[1]