DirectX е колекција од интерфејси за апликациско програмирање (англиски: application programming interfaces (API)) за справување со задачи поврзани со мултимедија и видео, а посебна примена наоѓа во програмирањето на игри. За DirectX е карактеристично тоа што е применливо само за платформи на Microsoft. Кога бил формиран, сите API кои спаѓаат во оваа колекција почнувале со Direct и поради тоа целата колекција била наречена DirectX. Со појавата на Xbox, Microsoft издал и мултиплатформни API за развој на игри, како на пример XInput, кои биле направени за да ги заменат поединечните DirectX компоненти.

Еден од сите тие API кои спаѓаат во DirectX, а е задолжен за 3D графика се нарекува Direct3D. Најмногу се користи за развој на комјутерски игри за Microsoft Windows, Microsoft Xbox и Microsoft Xbox 360. Освен за тоа, се користи и за софтверски апликации за визуелизациони и графички задачи. Името на ова АPI често се поистоветува со целото DirectX, бидејќи тоа е најмногу употребуваното и најраспространетото API од сите.

SDK (Software development kit ) на DirectX се содржи од библиотеки во бинарна форма, заедно со придружувачката документација и заглавјата за користење. Првпат DirectX се користел во Windows 95 OEM Service Release 2, иако тоа не било случај со почетниот Windows 95. Оттогаш па наваму секоја верзија на Windows содржи DirectX. SDK е достапен и може да се симне без плаќање од Интернет. Првата верзија на DirectX e DirectX 1.0 и е излезена на 30 септември. Оттогаш па наваму речиси секоја година се издава некоја нова верзија. До денешен ден развојот е стигнат до DirectX 11, кој беше издаден на 4 февруари 2009 година. Тој е компатибилен со Windows Vista SP2 и со Windows 7.

Компоненти

уреди

DirectX се состои од неколку АPI:

  • DirectX Graphics - кој се состои од
    • DirectDraw (за цртење 2D графика),
    • Direct3D (за цртење 3D графика) и
    • DXGI (за енумерирање на адаптери и монитори)
  • DirectInput - за комуницирање со влезни уреди како глувче, тастатура, џојстик итн.
  • DirectPlay - за комуникација преку LAN и WAN
  • DirectSound - за слушање и снимање на звук (DirectSound3D - за 3D звук)
  • DirectMusic - за свирење на саундтрак песни одобрени од DirectMusic Producer
  • DirectX Media - се користи за 2D/3D веб анимација
  • DirectX Media Objects - поддршка за стриминг објекти како енкодери, декодери и ефекти
  • DirectSetup - се користи за инсталација на компонентите на DirectX

Компатибилност

уреди

Со оглед на тоа што во комјутерската технологија не постои нешто што е единствено и што е совршено, така е тоа и во комјутерската графика, што значи истото важи и за DirectX. Тоа може да се заклучи уште на прв поглед ако се земе предвид фактот ограничување што важи за DirectX во однос на оперативниот систем, а тоа е дека е компатибилен само со Windows. Другите алтернативи кои постојат и на кои не се гледа во однос на тоа што може да направат во споредба со DirectX, туку кон кои се гледа како независни колекции од API се OpenGL, SDL, Allegro, OpenMAX, OpenML, OpenAL, FMOD итн. Најголем дел од овие се компатибилни со повеќе платформи и се со open source кодови.