DirectX

Z Multimediaexpo.cz

Microsoft DirectX je programátorská knihovna obsahující nástroje pro tvorbu počítačových her a dalších multimediálních aplikací, vytvořená firmou Microsoft pro použití pod operačním systémem Windows. Aktuální verzí knihovny je momentálně (2006) DirectX 10. DirectX 10 a DirectX 9.0L je pouze pro Microsoft Windows Vista.

Obsah

Části

DirectX se skládá z několika částí, rozdělených podle svého účelu:

  • DirectX Graphics (a jeho části DirectDraw a Direct3D) – podpora grafiky, 3D vykreslování atd.,
  • DirectInput – podpora vstupních zařízení jako např. myši, joysticky, gamepady apod., včetně podpory technologie force feedback,
  • DirectPlay – podpora hry více hráčů po síti,
  • DirectSound (dříve též spolu s DirectMusic označováno souhrnným názvem DirectX Audio) – podpora přehrávání a záznamu zvuků,
  • DirectMusic – podpora přehrávání a zpracování hudby,
  • DirectShow – podpora multimediálních aplikací, přehrávání a zpracování videa a zvuku,
  • DirectSetup – jednoduchý nástroj umožňující instalaci knihovny DirectX na počítač,
  • DirectX Media Objects – podpora pro tvorbu multimediálních efektů, kodeků apod.

Toto rozdělení je podstatné hlavně pro programátora, DirectX se šíří jako jediný balík obsahující všechny komponenty.

Historie

Verze DirectX zde uvedené musí také podporovat grafická karta!

DirectX verze Číslo verze Operační systém Datum vypuštění
DirectX 1.04.02.0095  1995
DirectX 2.0 / 2.0a4.03.00.1096Windows 95 OSR2 a Windows NT 4.0 1996
DirectX 3.0 / 3.0a4.04.0068 / 69Windows NT 4.0 SP3
Poslední podporovaná verze DirectX pro Windows NT 4.0
1996
DirectX 4.0Nikdy nebylo vypuštěno 
DirectX 5.04.05.00.0155 (RC55)Dostupné jako součást beta verze Windows NT 5.0 1997
DirectX 5.04.05.01.1721 / 1998Windows 98 1998
DirectX 6.04.06.00.0318 (RC3)Windows 98 SE 1998
DirectX 6.14.06.02.0436 (RC0)  1999
DirectX 7.04.07.00.0700 (RC1)Windows 2000 a Windows ME 1999
DirectX 7.0a4.07.00.0716 (RC1)  1999
DirectX 8.04.08.00.0400 (RC14)Xbox
Poslední podporovaná verze DirectX pro Windows 95
2000
DirectX 8.14.08.01.0810
4.08.01.0881 (RC7)
Windows XP 2001
DirectX 9.04.09.0000.0900Windows Server 2003 2002
DirectX 9.0a4.09.0000.0901  2003
DirectX 9.0b4.09.0000.0902 (RC2)  2003
DirectX 9.0c4.09.0000.0904 (RC0)Windows XP SP2 2004
DirectX 9.0c4.09.0000.0904První verze obsahující dynamickou knihovnu D3DX 2005
DirectX 9.0c (čtrnáctidenní aktualizace)4.09.0000.0904prosinec '05 až únor '06 update přidal XML formát několika třídám. Poslední verze: 26. červen, 2007
DirectX 10 (Windows Vista)6.00.6000.16386Nová verze Direct3D určená pouze pro Windows Vista2006
DirectX 10.1 (Windows Vista) 6.00.6001.18000 Vylepšená verze Direct 10 o nové prvky, např.: stínování a hra se světly.
Součást Windows Vista Service Pack 1
4. února 2008
DirectX 11 6.01.7600.16385 Zlepšená podpora více GPU (multiGPU).
Součást Windows 7 a časem byl přidán i do Windows Vista
2009
DirectX 11.1 6.02.9200.16384 Windows 8, Windows RT, Windows Server 2012 1. srpna 2012

DirectX 10

Tento významný update celého DirectX je dostupný pouze pro systém Windows Vista a novější. Předchozí verze Windows (například Windows XP) nemohou spouštět aplikace určené pro DirectX 10. Pokud je v systému s Windows XP hardware podporující verzi 10, pracuje v módu DirectX 9.0c, poslední verze, která pro Windows XP vyšla. Některé neoficiální projekty ale přinesly port DirectX i pro Windows XP.

DirectX přineslo významné změny. Spousta částí aplikačního rozhraní byla zavržena a v nejnovějším vývojářském kitu se zachovaly jen kvůli kompatibilitě. DirectInput nahradil novější Xinput, DirectSound nahradil systém XACT (Cross-platform Audio Creation Tool) a přišel o hardwarovou akceleraci, vzhledem k tomu, že Windows Vista renderují zvuk softwarově přímo v CPU. Knihovna DirectPlay, DPLAY.DLL, byla odstraněna a nahrazena knihovnou dplayx.dll. Počítačové hry, které tuto knihovnu využívaly, řeší problém duplikací knihovny a jejího následného přejmenování na dplay.dll. První hrou, přímo založenou na DirectX 10, byla 3D FPS Halo 2, která byla určená jen pro Windows Vista. Mezi další hry patří například Bioshock a Crysis.

Aby se dosáhlo zpětné kompatibility, DirectX ve Windows Vista obsahují několik verzí Direct3D:

  • Direct3D 9: emuluje chování Direct3D 9 tak, jak to bylo ve Windows XP. Veškeré nové funkce WDDM (Windows Display Driver Model) jsou pro aplikace zakázané, pokud jsou tyto ovladače nainstalovány. Je to jediné dostupné API v případě, že jsou nainstalovány ovladače pro Windows XP (XDDM), například při upgradu na Windows Vista.
  • Direct3D 9Ex (při vývoji Windows Vista také známé jako 9.0L nebo 9.L): povolují přímý přístup ke všem funkcím WDDM (za předpokladu, že jsou ovladače WDDM nainstalovány), při zachování zpětné kompatibility. Windows Aero plocha běží právě na D3D 9Ex.
  • Direct3D 10: Designováno pro nový model ovladačů ve Windows Vista (WDDM) obsahující několik zlepšení renderovacích schopností a flexibility, například Shader Model 4.

DirectX 10.1 je přírůstkový update verze 10.0, který vyšel společně s Windows Vista Service Pack 1, který také vyžadoval. Tato verze upravuje několik standardů kvality obrazu, díky kterým mají výrobci grafických karet nad kvalitou obrazu větší kontrolu. Také například přidává podporu cube mapování, exportování krycích masek z pixel shaderů, schopnost provozu pixel shaderu po snímcích a vyžaduje, aby grafické karty podporovaly Shader Model 4.1 a vyšší a 32 bitové operace s plovoucí desetinnou čárkou. DirectX 10.1 plně podporuje hardware DirectX 10.0 ale pro správný chod všech nových funkcí je potřeba hardware s podporou verze 10.1.

DirectX 11

Microsoft představil DirectX 11 v Seattlu na Gamefest 08. Hlavní novinky pak byly podpora GPGPU (DirectCompute) a zlepšení vícejádrové podpory pro herní vývojáře, pro jednodušší odladění her pro vícejádrové procesory. DirectX 11 podporuje Windows Vista, 7 a 8. Některé součásti nového API fungují i s hardwarem určeným pro starší verze 9/10/10.1, zatímco například Shader Model 5.0 vyžaduje hardware s přímou podporou DirectX 11. Verze 11 je pak rozšířením verze 10.1 – veškerý hardware a funkce 10.1 byly zachovány, nové funkce se zapínají pouze pokud je vyžaduje aplikace. To pomáhá zachování plné kompatibility se staršími verzemi DirectX.

Microsoft vydal finální update pro Windows Vista pět dní po oficiálním vydání Windows 7, které DirectX 11.0 obsahovaly ve své základní výbavě.

Direct X 11.1 je přímou součástí Windows 8. Podporuje WDDM 1.2 pro zlepšení výkonu, zlepšení integrace Direct2D, Direct3D a DirectCompute a přináší DirectXMath, XAudio2 a knihovny z XNA framework pro Xinput.

DirectX 11.2 pak bude exkluzivně pouze pro Windows 8.1 (podobně jako DirectX 10.1 pro Windows Vista Service Pack 1).

Související články

Externí odkazy