Anonim

Řekněme si to: DirectX 11 a OpenGL stárnou. DirectX 11 byl představen s Windows 7 v roce 2009 a OpenGL 4.0 následoval o rok později. V softwarových letech jsou tyto technologie nyní starodávné a současná úroda hardwaru, který používají, nebyla ani na rýsovacím prkně, když byla vydána tato grafická API. S ohledem na toto zřejmé odpojení, co dělá průmysl, aby se s časy? Podíváme se na blízkou budoucnost a uvidíme, ale nejprve si nejdříve vysvětlíme, co je API a jakou funkci slouží pro hraní.

Co je API?

Rozhraní API nebo aplikační programovací rozhraní je sada protokolů a nástrojů používaných k vytváření softwaru. Graphics API jsou opravdu jen specializované API vytvořené pro usnadnění generování 3D grafiky. Grafická rozhraní API usnadňují vytváření 3D obrazů, ale také vám umožňují říct rozhraní API, aby něco udělalo (např. Nakreslit obdélník), a rozhraní API pak nechá komunikovat s hardwarem o tom, jak postupovat při dokončení této úlohy. To je hlavní důvod, proč tolik různých GPU se specializovaným hardwarem může provozovat stejné hry. Bez existence API by stejná hra musela být psána různými způsoby, aby mohla komunikovat s každou konkrétní sadou hardwaru. To by vážně omezilo výrobce hardwaru a výrazně by zvýšilo náklady na stavební hry, což by nakonec bylo přeneseno na konečného spotřebitele.

Aby bylo vysvětlení výše trochu srozumitelnější, použiji analogii: Na manažera staveniště si představte API. Jeho úkolem je vzít nápad architekta a rozvinout jej, naplánovat, co posádky musí být, kde a kdy, a zajistit, aby všichni byli na stejné stránce, co je potřeba udělat.

Obrázek 1: Grafické znázornění fungování API

Aktuálně používaná rozhraní API Graphics

Nyní, když chápeme práci grafického rozhraní API, se můžeme blíže podívat na aktuální sestavu. Hlavním hráčem na dnešním trhu je Microsoft DirectX, který byl představen až v roce 1995. Od svého vydání byl několikrát aktualizován a je součástí operačního systému Microsoft Windows. DirectX je jedno grafické API, které bude podporovat téměř každá hra vydaná pro PC. Ve skutečnosti je tak běžné, že je dnes standardem pro počítačové hry. DirectX je exkluzivní pro produkty Windows a Microsoft, což z něj bohužel činí velmi uzavřený systém. Další v řadě je OpenGL, jediné hlavní open source grafické API. OpenGL byl vydán v roce 1992 a je multiplatformní, což znamená, že pracuje s několika operačními systémy včetně Windows, Linux a Mac OS. Nakonec máme nejnovější grafické API, Mantle. Mantle byl vyvinut v roce 2013 prostřednictvím partnerství mezi AMD a Dice. Plášť je k dispozici na Windows a pouze pro GPD AMD.

Obrázek 2: Porovnání DirectX 12 vs. DirectX 11
Zdroj obrázku; Obrázky Credit: Intel

DirectX 12

DirectX 12 má být vydán v systému Windows 10 letos na podzim a mnoho nových vylepšení je nabízeno. Jedním z velkých vylepšení je mnohem lepší podpora více podprocesů. Více práce je rozloženo na více jádrech CPU, což umožňuje mnohem lepší a efektivnější využití CPU. DirectX 11 bude mít mnohokrát pouze jedno jádro CPU úplně maximalizované, zatímco ostatní jádra sedí poblíž nečinnosti. DirectX 12 slibuje rovnoměrnější rozložení tohoto pracovního zatížení na jádra CPU, díky čemuž mají hry mnohem více výkonu procesoru. Další velké vylepšení, které slibuje DirectX 12, je schopnost zvládnout mnohem více losování. Remízní volání se stane kdykoli herní engine chce něco nakreslit na obrazovku. Požadavek velkého počtu losování je obecně velmi zdanitelný na CPU. DirectX 12 má zpracovat až 600 000 losování. Abychom to uvedli v perspektivě, DirectX 9 dokázal zpracovat pouze 6 000 losovacích hovorů nebo 1/100 toho, co DirectX 12 bude schopen.

Po celá léta bylo možné provozovat více GPU v režimu SLI / Crossfire. Jedním z velkých omezení však bylo, že VRAM zabudované do karet se neskladovaly dohromady, aby vytvořily jeden velký, souvislý fond. Pokud například máte dvě jednotky GPU s 2 GB paměti VRAM, stále jste měli efektivně pouze 2 GB paměti VRAM, protože v každé kartě musely být uloženy stejné informace. DirectX 12 doufá, že tento problém vyřeší pomocí AFR nebo alternativního vykreslování snímků. Namísto každé části vykreslování GPU každého snímku budou nyní místo toho vykreslovat vždy jeden celý snímek. To umožní, aby VRAM na každé kartě bylo použito samostatně, a snad to umožní, aby karty s menším množstvím VRAM byly životaschopné pro hraní po dlouhou dobu. V DirectX 12 by mělo být mnoho dalších nových funkcí, které posouvají herní grafiku dále než kdykoli předtím. Společnost Microsoft je však stále velmi tichá o tom, jaké jsou tyto nové funkce. Doufejme, že o nich budeme vědět hned, jakmile se blíží vydání API.

Obrázek 3: Režie rozhraní DirectX 12 API je snížena, pokud používáte vícejádrové procesory.
Zdroj obrázku; Obrazový kredit: nVidia GeForce

Vulkan

O Vulkanu není tolik známo jako o DirectX 12, jak to bylo právě oznámeno na GDC 2015. Co víme, je, že tvůrci OpenGL, Khronos Group, zrušili název glNext ve prospěch Vulkanu. Zdá se, že Vulkan pochází z Mantle, o kterém jsem se zmínil dříve v tomto článku. Navíc to vypadá, že AMD přináší ve spolupráci s Khronos Group ty nejlepší části Mantle ke stolu pro Vulkana. Vulkan má mít mnoho stejných výhod jako DirectX 12, ale není vázán na jednu platformu, jako je Windows. Místo toho bude k dispozici na mnoha různých platformách, včetně Linuxu a dokonce i mobilních zařízení. Ovladače Vulkan pro Windows i Linux budou na rozdíl od DirectX zcela open source. Vulkan zlepší vícevláknové zpracování, a proto mnohem lépe využije výkon CPU, který je dnes k dispozici, rozložením pracovního zatížení na více jader CPU. Jak již bylo uvedeno dříve, snížení zátěže CPU umožní, aby GPU nebyly omezeny tak snadno, jak jsou nyní. To by mělo během hry poskytnout podstatnou rámcovou podporu. Zdroj 2, který nedávno oznámil Valve, bude prvním novým herním motorem, který plně podporuje Vulkan, i když jsem si jist, že v blízké budoucnosti bude oznámeno mnohem více. Dota 2, hra známá tím, že je náročná na CPU, byla představení spuštěná ve zdroji 2 s novým rozhraním Vulkan API pomocí integrované grafiky Intel na procesoru. To je něco, co by podle DirectX 11 rozhodně nebylo žádoucí, ale s Vulkanem se zdálo, že hra udržuje celou přiměřenou rychlost snímkování. Dan Baker, který je vývojářem pro hry Oxide, dokonce zašel tak daleko, že řekl, že „dokud výrobci GPU nezačnou jednat společně a nezvýší GPU desetkrát rychleji, než máme nyní, nemůžeme maximalizovat CPU“. Toto je dobrá zpráva pro lidi, kteří provozují pomalejší CPU nebo kteří mají v současné době hodně GPU, protože to bude znamenat mnohem lepší výkon dosažitelný na stejné sadě hardwaru.

Obrázek 4: Schéma ukazující výhody Vulkanu (snížené úzké hrdlo na GPU).
Zdroj obrázku; Image Credit: Khronos

Co to znamená pro budoucnost hraní?

Dobře, už dlouhou dobu se výkon GPU zvyšuje rychleji než výkon CPU. Před pěti lety Intel dokonce uvedl, že některé GPU byly 14krát rychlejší než jejich vlastní CPU. Tyto testy byly provedeny s použitím nVidia GTX 280 vs procesorem i7 960 Intel - nyní považován za relativně zastaralý hardware. Mezera mezi nVidia GTX Titan X (nebo dokonce nVidia GTX 980) a současným mainstream CPU powerhouse - procesorem Intel i7-4790k - by měla být mnohem větší. Snažím se zdůraznit, že začneme vidět, že stále více a více her dopadlo na zeď kvůli výkonu. Zeptejte se kohokoli s monitorem s vysokou obnovovací frekvencí, jak je těžké udržovat 100 + fps s aktuálními CPU v některých hrách. Upřímně řečeno, bez těchto nových API a jejich schopnosti efektivněji využívat výkon procesoru by se to jen ztěžovalo. Zavedení těchto nových API by pro většinu lidí mohlo znamenat obrovský nárůst výkonu. Kromě toho by také vývojářům umožnilo stavět mnohem náročnější hry na CPU, než máme nyní. Představte si například hru jako Assasins Creed, která má na obrazovce tisíce NPC najednou, všechny spolu navzájem spolupracují a vaši postavu, zatímco procházíte městem. Nebo hry jako Star Citizen, kde potřebujete velmi silný procesor, abyste získali jakýkoli stabilní a přijatelný počet snímků za sekundu, může v blízké budoucnosti vyžadovat průměrný procesor v nejlepším případě a silný GPU, aby si udržel pěknou solidní rychlost 60 snímků za sekundu.

Nakonec je to velmi vzrušující čas být hráčem. Až budou tato nová grafická rozhraní API uvedena na trh, můžeme vidět jen největší skok v herní technologii za dlouhou dobu. Doufejme, že tato rozhraní API dokážou splnit humbuk, který si sami vytvořili.

Nové grafické API a budoucnost her na PC