DirectX 11 - seznámení s budoucností

Petr Štefek, 16.2.2009, recenze
Rubrika: Grafiky
Výrobce: Microsoft

V dnešním článku nahlédneme pod pokličku budoucího rozhraní DirectX 11, které je do značné míry vskutku revolučním API, jež bude zajímavé jak pro vývojáře, tak pro nás uživatele. Blýská se nám tedy na lepší časy?

Pokrok v počítačové 3D grafice je hlavním tahounem pro vývoj nového a stále rychlejšího hardware, který dokáže virtuální svět stále více přibližovat tomu reálnému, do kterého každé ráno vstáváme a žijeme v něm. Není tajemstvím, že o překotný vývoj hardware v posledních 10 letech se zasloužily hlavně hry a zábava s nimi spojená, která samozřejmě vydělává peníze. Vždyť si musíme uvědomit, že herní průmysl začíná velmi zdatně konkurovat doposud nedotknutelné filmové "mašině" na peníze.

GPU (Graphics Processing Unit) je srdcem každé grafické karty a mnoho méně znalých čtenářů by mohlo být přesvědčeno, že jsou to právě ona grafická jádra, která jsou alfou a omegou pro tvoření grafiky a její další zlepšování do budoucna. To je samozřejmě pravda, ale pouze částečně, neboť hlavní tíha leží na bedrech speciálního software, který známe pod pojmem API (Application Programming Interface). Každá nová generace tohoto speciálního rozhraní přináší mnohá vylepšení pro rozšířené možnosti pro vývojáře, kterým odstraňuje bariéry mezi tím, jak se vypořádat se stále vzrůstajícími nároky na vizuální stránku her.



Narozdíl klasického CPU grafický hardware alias GPU nemá klasický instrukční set, pod kterým mohou být nástroje a software vyráběny. Abychom mohli nějakým způsobem upotřebit výpočetní výkon tohoto hardware, tak nezbytně potřebujeme standardizované rozhraní, které odstraní nutnost přemýšlet nad tím, jaké GPU že nám to pod API běží. Díky tomu je pro vývojáře právě API naprosto stěžejním základem pro vývoj a určuje jasně programátorům hranice, za které nemohou při psaní her zajít. Standardy jsou do jisté míry omezující, ale díky nim můžeme hrát největší herní pecky, jako je Crysis na domácím systému s grafickou kartou ATI a stejně tak dobře i na kamarádově počítači s grafickou kartou z produkce Nvidie.

Klíčová úloha API je zpracování údajů o 3D objektu ve vytvářené virtuální scéně (jinak řečeno v 3D světě) a poslání těchto údajů spolu s dalšími doprovodnými daty grafickému hardware s instrukcemi, co že má hardware s těmito daty vlastně udělat. Proces zpracovávání dat je prováděn krok po kroku v přesně daném sousledu a obvykle je označován jako pipeline. Grafická pipeline má různé úrovně, kde jsou prováděny odlišné operace.



Prvním krokem je zpracování tzv. vertexových dat, což není nic jiného, než pozice vrcholů objektů, kterými jsou v naprosté většině trojúhelníky. Ty mohou být dále zpracovávány nebo modifikovány dle potřeb. Po tomto kroku jsou 3D objekty rozloženy do 2D fragmentů, které známe jako pixely (tento proces je obvykle nazýván jako rasterizace). Tyto pixely jsou poté po jednom zpracovány a jsou na ně nanášeny barvy dle informací o texutuře (povrchu) a aplikovány světelné techniky (je na daném pixelu simulován stín nebo světlo popřípadě odraz atd.). Když jsou takto pixely zpracovány, pak už zbývá jen jediná věc, a to zobrazit je na výstup na monitoru vašeho počítače. Tento proces je samozřejmě mnohem složitější, ale pro základní představu nám to v tomto článku postačí.

V posledních pár letech se do popředí dostalo jediné grafické rozhraní (API), které všichni známe jako DirectX. OpenGL se stalo minoritní záležitostí v oblasti profesionální grafiky (posledním mohykánem v oblasti vývoje pod OpenGL byl Id Software se svým enginem pro hru Doom 3). OpenGL ale není zdaleka tak mrtvé, jak by se mohlo na první pohled zdát, neboť najde využití ve zbrusu novém univerzálním rozhraní OpenCL.

Dnes si ovšem budeme povídat o rozhraní DirectX, které prosadil Microsoft již před pěknou řádkou let hlavně díky integraci do svého operačního systému Windows a také nákladné podpoře pro vývojáře. V současné době máme aktuálně DirectX ve verzi 10, ale na trhu se stále objevují také DirectX 9 hry založené na starších enginech. Pravdou zůstává, že o rozdílu ve vizuální kvalitě her založených na novější verzi DirectX 10 v porovnání se starším DirectX 9 se vedou stále spory a na internetu najdete mnoho rozborů vizuální kvality oblíbených her. Často se tedy stává, že hra zpřístupňuje maximální úroveň detailů pouze pod DirectX 10, aby tak ospravedlnila jeho existenci z hlediska lepší vizuální kvality. Microsoft předem avizoval, že DirectX 10 bude především o vyšší rychlosti, která dopomůže k vyššímu výkonu u totožných her. Obecně vše tak jednoznačné nebylo a i dnes se běžně stává, že hry jsou pod DirectX 9 rychlejší.

Microsoft bude s velkou pravděpodobností čekat s uvedením zbrusu nové verze DirectX 11 do doby, než bude na trhu kompatibilní hardware, jenž umožní jeho akceleraci a plného využití. Her založených na DirectX 11 enginech se ovšem můžeme dočkat mnohem později a nebude překvapením, že se tak stane v řádech mnoha měsíců později. Výrobci jako Nvidia proklamovali již od začátku, že jejich další generace čipů přeskočí vylepšené rozhraní DirectX 10.1 a soustředí se rovnou na přicházející verzi. Microsoft velmi pravděpodobně integruje opět novou verzi DirectX do svého nového operačního systému Windows 7, který by mohl spatřit světlo světa koncem tohoto roku.



Hlavní změny v DirectX 11 se týkají hlavně grafické pipeline, kde je velký pokrok ve způsobu, jak se data o 3D scéně zpracovávají díky rozšířeným možnostem hardware a samotného rozhraní. Novinkou je především teselace (Tesselation – spolupracuje hull shader, samotný teselátor a klasické shadery) a tzv. výpočetní shader (Compute Shader), kde obě tyto vlastnosti mají za úkol opět o kousek přiblížit virtuální svět tomu reálnému.

DirectX 11 je v podstatě nadřazeným rozhraním DirectX 10.1, kde oproti němu přidává mnoho vylepšení, ale všechny vlastnosti a funkce předchozího rozhraní zůstávají v DirectX 11 zachovány. Pokud nyní uvažujete nad tím, že z této situace může velmi profitovat AMD se svými DirectX 10.1 čipy, tak se nemýlíte. Teoreticky je možné, že majitelé Radeonů HD4xx0 budou mít pod novým rozhraním výhodu kompatibility. Zatím to je ovšem pouze teorie, neboť jsme již nesčetněkrát byli svědky toho, že technologická převaha byla v reálných aplikacích k ničemu.

Změny v procesování dat v grafické pipeline umožní vývojářům napsat programy (shadery) k různým typům úloh, kde tyto malé změny umožní, aby tyto programy byly více komplexní, rychlejší a s kvalitativně lepšími výsledky. Ke všemu ještě nové DirectX 11 umožňují podporu paralelního programování, takže nebude výjimkou, že samotná hra bude akcelerovat některé úlohy skrz grafické karty namísto procesorů tak, jako tomu bylo dodnes.
Kvalita článku: 95 % (39 hlasů)
 
Re: ugpgrade VistaxxxVISTA10.8.200915:13
Chyba v clankuGulDucat20.5.20094:50
Aha + 2 reakceGulDucat20.5.20095:00
Tesselator + 3 reakceGulDucat20.5.20091:36
Vyhoda ATI a jejich soucasnych DX10.1 karet... + 2 reakcePetr Štefek22.2.200918:43

6. ročník IT Security Workshop startuje v březnu

Už za měsíc, konkrétně 20. března 2012 v Kongresovém centru U hájků v Praze, proběhne již 6. ročník konference IT Security Workshop. Jeho hlavními tématy budou podvody na Facebooku a bezpečnost sociálních sítí, které se staly...

Spire oficiálně uvedl procesorový chladič TME III

Spire dnes oficiálně představil procesorový chladič TME III pocházející z úspěšné série TherMax Eclipse. Vysokou účinnost chlazení zde zajišťuje pět 8mm poniklovaných heatipe ve tvaru písmene U. Ty se navíc dotýkají přímo...

První smartphone s modemem NVIDIA Icera

Společnost NVIDIA se pochlubila, že na trh v podobě chytrého telefonu ZTE Mimosa X přichází první produkt vybavený aplikačním procesorem NVIDIA Tegra 2 i modemem Icera, který je výsledkem akvizice společnosti stejného názvu. Ta se...

ZOTAC GeForce s 3denním přístupem na TrackMania2 Canyon

Společnosti ZOTAC a Ubisoft se domluvily na tom, že majitelé vybraných grafických karet značky ZOTAC s čipy GeForce dostanou možnost si zdarma po tři dny zahrát online závodní hru TrackMania2 Canyon. Tu tisková zpráva pasuje na...

Noctua si připravila nízkoprofilový chladič NH-L12

Společnost Noctua není z těch, které chrlí na trh jeden produkt za druhým a o jejích procesorových chladičích to platí dvojnásob. Můžeme tedy očekávat, že si na svém novém NH-L12 dala záležet. Firma se nyní zaměřila na uživatele...

Philips uvádí na trh nový 24" monitor pro domácnosti

Společnost MMD Monitors & Displays Czech Republic si pro český a slovenský trh připravila nový LCD monitor s označením Philips 247E3LHSU, který je adeptem na to, aby se stal vybavením běžných domácností, kam má dle představ...

Intel SSD 520 a Kingston SSDNow V+200 v testu

Intel SSD 520 a Kingston SSDNow V+200 v testu Výrobci neúnavně vyvíjejí nové modely SSD, a tak musíme reagovat také my s naším testem, v němž se předvedou novinky firem Intel a Kingston. Obě testovaná SSD jsou založena na identických kontrolerech firmy SandForce a obě jsou...

GeForce GTX 670 Ti se chystá na trh

Na konci minulého roku se objevila roadmap popisující vývoj grafických čipů firmy NVIDIA, kde se objevily také 28nm GPU s označením GK104. Ty byly označeny za nástupce 40nm čipů GF114 v kartách GeForce GTX 570, oproti nimž měly...
včera,  aktualita,  Jan Vítek,  komentovat