Rozhraní DirectX od Microsoftu patří bez jakýchkoliv pochybností mezi standard hojně využívaný při vývoji počítačových her. Není tomu ale tak dávno, kdy se velmi úspěšné DirectX muselo potýkat s nepřízní a odmítáním. Znáte osudy tohoto rozhraní?
Při nástupu 3D grafiky vládl ve vývoji her totální zmatek a chaos. Existovala sice celá řada různých rozhraní, jež mohli vývojáři her při své práci použít a která nabízela různé funkce, ovšem tato rozhraní byla často vázána jen na určitý hardware. Zřejmě nejznámějším představitelem bylo rozhraní Glide, které dokázalo využívat hardware společnosti 3DFX. Toto rozhraní následně zaniklo spolu s tím, jak z trhu zmizely grafické karty Voodo. Za zmínku rozhodně stojí také rozhraní OpenGL, jež se ostatně používá dodnes a které je přímým konkurentem právě pro DirectX.
Rozhraní OpenGL však získalo značný ohlas mezi vývojáři her i uživateli zejména kvůli své nezávislosti na provozované platformě a na programovacím jazyku. Mezi jeho přiznivce dlouho patřil i zakladatel id Software, John Carmack, který svého času velmi rázně vystupoval právě vůči modelu DirectX omezenému pouze na operační systém Windows. Je trochu ironií osudu, že se úspěch rozhraní DirectX začal psát právě v tom okamžiku, kdy světlo světa spatřila hra Doom od Carmacka, jakožto otevřeně se hlásícího odpůrce Direct3D.
V zásadě ale zůstal operační systém Windows poměrně dlouhou dobu naprosto nezajímavým prostředím pro hry, jež stále běžely v operačním systému MS-DOS. Až po fenomenálním úspěchu Doomu Microsoft pochopil, jak velký finanční potenciál se v oblasti počítačových her skrývá a začal se této oblasti věnovat více. Výsledkem bylo uvedení WinG a Game SDK, dvou velmi chudých a stejně tak neúspěšných souborů funkcí. O něco později se začala psát úspěšná historie Windows jakožto herní platformy – příčinou toho bylo uvedení DirectX 1.0. Díky tomuto rozhraní pak dostala 3D grafika razantní impuls ke svému dalšímu rozmachu.
Co vlastně DirectX umí? Jedná se o soubor rozhraní určených pro programátory, kteří se zabývají vývojem her a potřebují přímo přistupovat k hardwaru počítače. Za normálních okolností je totiž přímý přístup k hardwaru zakázán. Bez přímého přístupu k hardwaru totiž například není možné provádět operace s grafikou či se zvukem, které se u počítačových her vyžadují.
Nejdůležitější součásti rozhraní DirectX
DirectX Graphics - Dříve bylo odděleno jako samostatné v podobě Direct3D a Direct2D/DirectDraw. Jedná se o rozhraní pro programování grafiky.
DirectX Audio - Umožňuje programování všeho, co se týká zvuku. Dříve bylo odděleno jako samostatné v podobě rozhraní DirectSound a DirectMusic.
DirectPlay - Jedná se programování komunikace přes síť a používá se mimo jiné při vývoji her, které hraje více hráčů po síti (multiplayer).
Xinput - U této komponenty jde o přístup pro vstupní zařízení všeho druhu. Obsahuje i programování Force Feedback.
DirectX Media - Jedná se o rozhraní pro multimédia, které zajišťuje nahrávání a přehrávání videa a hudby, streamu médií a interaktivních webových aplikací.
DirectCompute - Jedná se o nové rozhraní DirectX 11, které umožňuje spouštění složitějších, silně paralelizovaných výpočtů, které nesouvisí s grafikou. Tyto výpočty probíhají na čipu grafické karty.
DirectSetup - Tato součást testuje úplnost a aktuálnost jednotlivých součástí DirectX. Zajišťuje mimo jiné i instalaci aktualizací.
Další díl historického seriálu o DirectX čekejte na našem webu již brzy!
/*text v rámečku*/