Co je DirectX a proč je to důležité?


DirectX je API nebo aplikační programovací rozhraní. Funguje jako prostředník mezi softwarovým kódem videoher a hardwarem použitým k jejich hraní. Bez DirectX by hraní videoher nebylo tak bezbolestné jako dnes, ale co je DirectX a proč je tak kritický?

DirectX je API, ale co to je?

Řekli jsme, že API je software, který umožňuje hrám komunikovat s hardwarem, ale to je velké zjednodušení. Ovšem ovladače hardwaru, které mluví s operačním systémem, lze popsat stejným způsobem.

Rozhraní API standardizuje katalog příkazů a funkcí, které mohou vývojáři her požadovat od počítačového hardwaru. Jedná se o vrstvu softwaru mezi hrou a hardwarem, která překládá dva „jazyky“, kterými herní a hardwarové zařízení mluví.

Abychom byli přesnější, API hovoří k hardwarovým ovladačům jménem hry a protože do nich byly zapsány ovladače hry i hardware být kompatibilní s DirectX, nikoli navzájem přímo, znamená to, že konverzace je bezproblémová.

Pokud se chcete hlouběji věnovat API, je Vysvětlení HDG: Co je API? skvělým místem pro začátek.

Špatné staré dny před DirectX

Takže jsme zjistili, že DirectX je API, které stojí mezi hrou a hardwarem, který potřebuje ke spuštění, ale proč nemůže videohra mluvit přímo s grafickou kartou, zvukovou kartou atd.?

In_content_1 vše: [300x250] / dfp: [640x360]->

Přesně to se dříve stávalo. V dobách MS-DOS a v počátcích Windows komunikovaly videohry přímo s ovladači hardwaru.

Problém tohoto přístupu spočívá v tom, že vývojář her musel psát kód pro každý jednotlivý produkt nebo produktová řada. Pokud dnes hrajete klasickou hru pro systém MS-DOS, uvidíte položky zvukových karet pro značky jako Creative SoundBlaster nebo AdLib.

Toto bylo nejvíce populární značky zvukových karet, takže vývojáři her by mohli pokrýt většinu zákazníků jejich podporou, ale ne všichni. Méně známí výrobci hardwaru by nakonec vytvořili produkty, které by byly kompatibilní se stejnými ovladači jako velká jména. Proto jsme dnes dostali tolik karet „Sound Blaster Compatible“.

Výsledkem bylo, že i když máte nejvíce podporovaný hardware, neexistovala žádná záruka, že daná hra bude fungovat. s počítačem. DirectX tento problém vyřešil.

DirectX usnadňuje vývojářům a výrobcům hardwaru

Každá verze DirectX (a jsme na DirectX 12) stanoví sadu hardwaru a softwaru funkce, které musí mít kompatibilní hardware. Jinými slovy, pokud chcete, aby vaše grafická karta byla certifikována pro nejnovější verzi DirectX, musí mít v sobě zabudovanou minimální sadu funkcí.

Vývojáři poté píší své hry, aby nebyli kompatibilní s konkrétní grafickou kartou, ale musí být kompatibilní se samotným DirectX. Jinými slovy, jak výrobci hardwaru, tak vývojáři her standardizují své produkty na DirectX, a proto je zaručeno, že si každá herní a hardwarová součást navržená pro práci s konkrétní verzí DirectX navzájem pěkně zahrají.

DirectX Is The „X“ in Xbox

Každý ví, že dvě největší jména v prostoru herních konzolí jsou PlayStation a Xbox, ale možná nevíte, že originál jeho název byl nejprve „DirectX Box“.

Je pravděpodobné, že se Microsoft rozhodl název zkrátit, ale je to také velmi přesný popis konzoly. První Xbox byl dlážděn společně s hardwarem počítače a používal omezenou verzi Windows a DirectX. To platí i dnes s nejnovějšími Konzoly Xbox Series X a S..

Jedna velká výhoda to je, že portování her mezi Xboxem a Windows PC je velmi jednoduché. Jelikož jsou ve skutečnosti stejnou platformou. PlayStation a Nintendo Switch však používají vlastní API, což nás přivádí k dalšímu důležitému faktu o DirectX.

DirectX není jediná hra ve městě

Zatímco DirectX se stal jedním z nejdůležitějších a nejrozšířenějších API, není zdaleka jediný. Mnoho různých organizací uznalo, že je potřeba standardizace. Zatímco DirectX je API, které zahrnuje vše od grafiky po herní ovladače, existují také rozhraní API, která se zaměřují pouze na jeden aspekt, například na grafiku.

Když se první 3D grafická karta začala stávat populární v polovině 90. let , potřeba grafických API začala být akutní. Karty 3dFX Voodoo používaly proprietární Glide API. OpenGL (Open Graphics Library) je otevřený standard, který dnes zůstává populární a existuje v moderní podobě jako Vulkan. Apple má také svůj Metal API pro svá vlastní zařízení a v jiných kategoriích zařízení, jako jsou mobilní telefony a tablety, je jich mnohem více.

Ačkoli DirectX nemá úplnou dominanci na trhu, ostatní API jsou ovlivněna tím, co se Microsoft rozhodl nařídit každá verze DirectX. To znamená, že nediktují všem ostatním. Každá verze DirectX je vytvořena po konzultaci se všemi zúčastněnými stranami, takže se zdá, že vztah je více vzájemný, než by se dalo předpokládat.

DirectX není něco, čeho se musíte obávat

Velkou otázkou je, do jaké míry si vy, uživatel, musíte dělat starosti s DirectX. V dřívějších verzích DirectX ve starších systémech Windows byste museli DirectX instalovat ručně. Daná hra většinou obsahovala minimální verzi DirectX, kterou potřebovala. Pokud tento instalační program zjistil v systému novější verzi této generace DirectX, jednoduše by nic nenainstaloval.

Každá verze DirectX (např. 9c, 11 & 12) je jeho vlastní věc, ale Windows 10 přichází s předinstalovanými kopiemi. Vaše starší hry poběží skvěle na vašem novém lesklém počítači se systémem Windows 10.

Daleko důležitější je výběr hardwaru. Software můžete kdykoli aktualizovat nebo stáhnout ten správný, aby retro hry fungovaly, ale hardware, který máte, nelze změnit bez upgradu nebo nového počítače.

Soulad hardwaru s DirectX

Každý hardware, který je relevantní pro videohry nebo jinou aplikaci využívající podobnou technologii, je v době vydání obecně kompatibilní s nejnovější verzí DirectX.

Pokud by však byla vydána nová verze DirectX, je možné, že váš stávající hardware nebude kompatibilní, pokud chybí hardwarová funkce, kterou nová verze DirectX potřebuje. To však není důvod k okamžitému přepnutí hardwaru!

Vždy existuje přechod období, kdy hry podporují více verzí DirectX. Například v současné době je typické, že hry podporují DirectX 11 i DirectX 12. Pokud však hledáte nový hardware (zejména GPU ), pak je dobré koupit něco, co je kompatibilní s nejnovější hlavní verzí DirectX. Protože si přejete, aby váš nový nákup zůstal relevantní po dobu alespoň několika let.

Když už jste u toho, můžete také zkontrolovat, zda je váš nový hardware kompatibilní s nejnovějšími verzemi dalších významných konkurenční rozhraní API, například Vulcan.

Související příspěvky:


22.03.2021