Dneska se podíváme, co to vlastně je ten DirectX, zhlédneme co mají na starosti jednotlivé komponenty, a na závěr jako třešničku si dáme DXDIAG.
<script type='text/javascript'></script>
Když se řekne pojem "DirectX", většině hráčů nebo i programátorů se vybaví grafické enginy, kterými se firma Microsoft proslavila. DirectX je však více: je to rozhraní mezi hardwarem (grafickými kartami, zvukovými kartami, joysticky, myšmi, klávesnicemi, gamepady apod.) a softwarem (konkrétně Windows), které má usnadňovat programátorům přístup k jejich funkcím a umožnit využití jejich možností na 100%. Šíří se jako jediný balík zvaný DirectX, avšak skládá se z několika částí, které jsou pro programátory rozděleny podle účelu:
• Direct Graphics (2 části)
o Direct Draw (Rozhraní pro programování 2D grafiky (dvourozměrné).)
o Direct 3D (Rozhraní pro programování 3D grafiky (trojrozměrné).)
• Direct Input (Zajišťuje podporu všech "vstupních" zařízení jako jsou klávesnice, myši, gamepady, joysticky atp.)
• Direct Play (Slouží k přenášení dat kabelem, komunikaci po síti – tzv. Multiplayer (hra více hráčů přes více počítačů).)
• Direct Sound (Podpora nahrávání a přehrávání zvuků.)
• Direct Music (Slouží k přehrávání a zpracování (úpravu) hudby.)
• Direct Show (Zajišťuje podporu přehrávání, zpracování videa a zvuku, a také celkovou podporu multimediálních aplikací.)
• Direct Setup (Nástroj, který umožní instalaci balíku DirectX na váš počítač.)
• Direct X Media Object (Podpora tvoření kodeků, multimediálních efektů atp.)
Stejně jako každá jiná počítačová utilita i DirectX prošel již určitým vývojem a dále se rozvíjí. Úplný počátek sahá do roku 1995, kdy byl vydán DirectX 1.0. Současné verze DirectX, a to k dnešnímu datu 14. dubna 2009, jsou pro Windows Vista DirectX 10 a pro Windows XP DirectX 9.0c.
Ovšem DirectX, co se týče hardwaru, má jen omezenou podporu – jsou výrobci (jako nVidia nebo Creative), kteří vsadili na hardwarovou kompatibilitu s DirectX, ale jiní výrobci vsadili spíše na hardwarovou kompatibilitu s OpenGL, které se drží těsně za DirectXem. Tato kompatibilita (nebo spíš nekompatibilita) některých karet může způsobit značné problémy, se kterými vám samozřejmě na naší poradně rádi poradíme.
S DirectX souvisí také nástroj pro jeho diagnostiku. Chcete-li se do něj dostat (ať už na systému Vista nebo XP), tak na panelu Start klikneme na ikonu Spustit – po ní nám naskočí tabulka, do které napíšeme do kolonky otevřít "DXDIAG" (bez uvozovek).
Poté klikneme na OK – výsledkem bude, že se nám otevře nástroj pro diagnostiku rozhraní DirectX.
Najdeme zde všechny možné informace od komponentů v PC až k připojeným zařízením (klávesnicím, myším, ale i zvukovým zařízením, grafickým kartám apod.). Mimo jiné zde najdeme verzi systému a verzi DirectX. Asi poslední funkcí, o které bych se chtěl dnes zmínit, je schopnost DXDIAGu zapsat všechna získaná data pomocí pár kliknutí do *.txt souboru. Stačí na záložce Systém kliknout na Uložit všechny informace, zvolit umístění, kam chcete soubor *.txt uložit, pojmenovat ho a kliknout na Uložit.
Odkaz pro stáhnutí DirectX na váš PC je
Docela mě zaujala ta možnost uložení dat.. pokud člvěk ví, co hledá, je to docela užitečný diagnostický nástroj, srovnatelný v této oplasti i s Everestem.. možná i pro laiky jednodušší takovýto výpis opatřit a ten kdo to bdue potřebovat (rádce na poradně) tam najde vše potřebné..
Dá se někde zjistit jací výrobci upřednostňují DirectX před kupříkladu tím OpenGL ? ... Taky by mě pak zajímalo, protože jsem se nikdy o DX nezajímal, jakým způsobem programátor může DX využít. Pokud bychom programovali například ovladače pro určité zařízení tak bychom použili základní programovací jazyk - Assembler. Mě by tedy zajímalo, jestli je DX tak chytrý a dokáže komunikovat s jakýmkoliv zařízení v PC i když pro něj nemá ovladače.
DirectX se používá při programování her kupříkladu. Využívají ho programovací jazyky jako knihovnu - určitě s ním pracuje Cčko, C++, nejspíš i Java. Kamarád programuje v Cčku jednoduché hry, tak právě DX využívá a nemůže si ho vynachválit.
Děkuji mnohokrát autorovi za tento článek, myslím, že se rozvine dlouhá diskuze na toto téma :-).
Jen chci dodat že DX 10 je i pro Win XP (používám ho už od března)
Jen chci dodat, že DX 10 NENÍ pro Win XP (těžko ho používáš od března)
Opravdu, XPéčka jsou dělaná tuplně jinak a dosti zastarale, Microsoft je stahuje (stahnul) z prodeje tak proč by se zabýval optimalizací DX 10 pro XP? nejen, žeby to bylo náročné, ale i zbytečné.. DX 10 podporují jen novější grafiky a ty novější grafiky jsou standardně už v kompech s Vistama..
Bylo by to skvělé, ale bohužel XPéčka nikdy DX 10 podporovat nebudou, protože nemůžou. Nejvyšší verzi, kterou XPéčka umí je DX 9.0c
Je to i není pravda. Jistá mutace DX10 na Windows XP skutečně na internetu je (jakási alpha verze). Na Microsoftu je dokonce dostupný jakýsi SDK balíček, který se možná tímto zabývá také, ale s jistotou to tvrdit nemohu. Každopádně oficiální balíček DX10 pro Win. XP jsem na internetu nenalezl. Většinou se jedná o odkazy na internetové úschovny dat.
Ať už tak nebo tak, standard a "recommend" pro operační systém Windows XP je doporučován (a nejen námi na PCP) DirectX 9.0c. Jedná se o stabilní a podporovaný balíček. Pokud se na to podíváme i trochu z jiného pohledu, není se čemu divit; Win. XP jsou již pro Microsoft mrtvým systémem. Podpora se staršími verzemi OS se tak jeví jako zbytečná. Proto doporučuji využít odkazu v článku, který odkazuje na balíček, který automaticky detekuje operační systém a nainstaluje, popřípadě aktualizuje, některé důležité knihovny tohoto rozhraní...