Anonim

Priznajme si to: DirectX 11 a OpenGL starnú. DirectX 11 bol predstavený so systémom Windows 7 už v roku 2009 a OpenGL 4.0 nasledoval o rok neskôr. V softvérových rokoch sú tieto technológie už starodávne a súčasná úroda hardvéru, ktorý používajú, nebola v čase vydania týchto grafických rozhraní API ani na rysovacej doske. Čo robí toto odvetvie s ohľadom na tento zjavný nesúlad s časmi? Pozrime sa na blízku budúcnosť a uvidíme, ale najskôr si najskôr vysvetlíme, čo je API a akú funkciu slúži na hranie.

Čo je to API?

Rozhranie API alebo aplikačné programovacie rozhranie je sada protokolov a nástrojov používaných na vytváranie softvéru. Grafické rozhrania API sú skutočne iba špecializované rozhrania API vytvorené na uľahčenie generovania 3D grafiky. Grafické rozhrania API uľahčujú vytváranie 3D obrazov, ale umožňujú vám tiež povedať rozhraniu API, aby niečo urobilo (napr. Nakresliť obdĺžnik), a rozhranie API potom nechá komunikovať s hardvérom o tom, ako postupovať pri dokončení tejto úlohy. Toto je hlavný dôvod, prečo toľko rôznych GPU so špecializovaným hardvérom môže prevádzkovať rovnaké hry. Bez existencie rozhrania API by sa rovnaká hra musela písať rôznymi spôsobmi, aby bolo možné komunikovať s každou špecifickou sadou hardvéru. Tým by sa výrazne obmedzila výroba hardvéru a výrazne by sa zvýšili náklady na stavebné hry, čo by sa nakoniec prenieslo na konečného spotrebiteľa.

Aby bolo vysvetlenie vyššie trochu zrozumiteľnejšie, použijem analógiu: Rozmýšľajte o API ako o správcovi staveniska. Jeho práca spočíva v tom, aby architektonický nápad rozobral a rozvrhol plán, čo posádky musia byť, kde a kedy, a zabezpečiť, aby boli všetci na tej istej stránke, čo je potrebné urobiť.

Obrázok 1: Grafické znázornenie fungovania API

Aktuálne používané grafické rozhrania API

Teraz, keď chápeme prácu grafického rozhrania API, sa môžeme bližšie pozrieť na aktuálnu zostavu. Hlavným hráčom na dnešnom trhu je Microsoft DirectX, ktorý bol uvedený na trh v roku 1995. Od svojho vydania bol niekoľkokrát aktualizovaný a je súčasťou operačného systému Microsoft Windows. DirectX je grafické rozhranie API, ktoré bude podporovať takmer každá hra vydaná pre PC. V skutočnosti je také bežné, že je dnes štandardom pre počítačové hry. DirectX je exkluzívny pre produkty Windows a Microsoft, čo ho bohužiaľ robí veľmi uzavretým systémom. Ďalej v rade je OpenGL, jediné hlavné grafické rozhranie s otvoreným zdrojom. OpenGL bol vydaný v roku 1992 a je multiplatformový, čo znamená, že pracuje s niekoľkými operačnými systémami vrátane Windows, Linux a Mac OS. Nakoniec máme najnovšie grafické rozhranie API, Mantle. Mantle bol vyvinutý v roku 2013 prostredníctvom partnerstva medzi AMD a Dice. Mantle je k dispozícii na Windows a iba pre AMD GPU.

Obrázok 2: Porovnanie DirectX 12 vs. DirectX 11
Zdroj obrázka; Obrázky Credit: Intel

DirectX 12

DirectX 12 má byť uvedený na trh s Windows 10 tento rok na jeseň a mnoho nových vylepšení je ponúkaných. Jedným z veľkých vylepšení je oveľa lepšia podpora viacerých vlákien. Viac práce sa rozprestiera na viacerých jadrách CPU, čo umožňuje oveľa lepšie a efektívnejšie využitie CPU. DirectX 11 bude mať mnohokrát iba jedno jadro CPU úplne maximalizované, zatiaľ čo ostatné jadrá sedia blízko nečinnosti. DirectX 12 sľubuje rovnomernejšie rozloženie tohto pracovného zaťaženia na jadrá CPU tým, že hrám oveľa viac energie na prácu s procesorom. Ďalším veľkým zlepšením, ktoré sľubuje DirectX 12, je schopnosť zvládnuť oveľa viac žrebovaní. Remíza sa uskutoční kedykoľvek herný engine chce niečo nakresliť na obrazovku. Požiadavka veľkého počtu žrebovacích hovorov vo všeobecnosti veľmi zaťažuje CPU. DirectX 12 by mal byť schopný spracovať až 600 000 žrebovacích hovorov. Aby sme to uviedli v perspektíve, DirectX 9 zvládol iba 6 000 hovorov alebo 1/1 000 toho, čo bude DirectX 12 schopný.

Už roky je možné prevádzkovať viacero GPU v režime SLI / Crossfire. Jedným z veľkých obmedzení však bolo, že VRAM zabudované do kariet sa spolu nezostavili do jedného veľkého súvislého fondu. Napríklad, ak máte dve jednotky GPU s 2 GB pamäte VRAM, stále ste v skutočnosti mali iba 2 GB pamäte VRAM, pretože na každej karte museli byť uložené rovnaké informácie. DirectX 12 dúfa, že tento problém vyrieši pomocou AFR alebo alternatívneho vykresľovania rámcov. Namiesto každej vykresľovacej časti GPU každého rámca, teraz GPU namiesto toho vykreslia vždy jeden celý rámec. To umožní, aby sa VRAM na každej karte používalo nezávisle, a dúfajme, že to umožní, aby karty s menším množstvom VRAM boli životaschopné na dobrú a dlhšiu dobu. V DirectX 12 by malo byť veľa ďalších nových funkcií, ktoré posúvajú hernú grafiku ďalej ako kedykoľvek predtým. Spoločnosť Microsoft sa však stále veľmi poteší tým, aké sú tieto nové funkcie. Dúfajme, že sa o nich dozvieme viac, len čo sa priblíži vydanie API.

Obrázok 3: Režia rozhrania DirectX 12 API sa pri použití viacjadrových CPU znižuje.
Zdroj obrázka; Obrázok Kredit: nVidia GeForce

Vulkan

O spoločnosti Vulkan nie je toľko známe, ako je o DirectX 12, ako to bolo práve oznámené na konferencii GDC 2015. Čo vieme, je, že tvorcovia skupiny OpenGL, Khronos Group, zrušili názov glNext v prospech spoločnosti Vulkan. Zdá sa, že Vulkan pochádza z Mantle, o ktorom som sa zmienil vyššie v tomto článku. Ďalej to vyzerá, že AMD prináša v spolupráci s Khronos Group tie najlepšie časti Mantle pri stole pre Vulkana. Vulkan má mať mnoho rovnakých výhod ako DirectX 12, ale nie je viazaný na jednu platformu ako Windows. Namiesto toho bude k dispozícii na mnohých rôznych platformách vrátane Linuxu a dokonca aj mobilných zariadení. Ovládače Vulkan pre Windows aj Linux budú na rozdiel od DirectX úplne open source. Vulkan zlepší viacvláknové procesy, a preto oveľa lepšie využije výkon CPU, ktorý je dnes k dispozícii, rozložením pracovného zaťaženia na viac jadier CPU. Ako už bolo spomenuté vyššie, zníženie zaťaženia procesora umožní, aby sa GPU nedotkli tak ľahko, ako sú teraz. To by malo poskytnúť dosť výraznú snímkovú podporu počas hrania hier. Zdroj 2, ktorý nedávno oznámila spoločnosť Valve, bude prvým novým herným motorom, ktorý plne podporuje Vulkan, aj keď som si istý, že v blízkej budúcnosti bude ohlásených oveľa viac. Hra Dota 2, hra známa tým, že je náročná na CPU, bola predstavená v zdroji 2 s novým rozhraním Vulkan API, ktoré využíva integrovanú grafiku spoločnosti Intel na procesore. Toto je určite niečo, čo by nebolo podľa DirectX 11 žiaduce, ale zdá sa, že s Vulkanom hra udržala primeranú rýchlosť snímok. Dan Baker, ktorý je vývojárom pre hry Oxide, dokonca zašiel až tak ďaleko, že povedal, že „kým výrobcovia GPU nezačnú konať a neurobia GPU desaťkrát rýchlejšie ako v súčasnosti, nemôžeme maximalizovať CPU“. Toto je dobrá správa pre ľudí, ktorí prevádzkujú pomalšie procesory alebo ktorí majú v súčasnosti veľa GPU, pretože to bude znamenať, že na rovnakom súbore hardvéru sa dá dosiahnuť oveľa lepší výkon.

Obrázok 4: Schéma ukazujúca výhody Vulkanu (znížené úzke miesto na GPU).
Zdroj obrázka; Kredit na fotografie: Khronos

Čo to znamená pre budúcnosť hrania?

Dobre, už dosť dlho sa výkon GPU zvyšuje oveľa rýchlejšie ako výkon CPU. Pred piatimi rokmi spoločnosť Intel dokonca uviedla, že niektoré GPU boli 14-krát rýchlejšie ako ich vlastné procesory. Tieto testy sa uskutočnili s použitím procesora nVidia GTX 280 verzus procesor Intel i7 960 - teraz považovaný za relatívne zastaraný hardvér. Priepasť medzi nVidia GTX Titan X (alebo dokonca nVidia GTX 980) a súčasnou hlavnou procesorovou jednotkou CPU - procesormi Intel i7-4790k - by mala byť oveľa väčšia. Chcem zdôrazniť, že začíname vidieť, že stále viac a viac hier narazí na stenu kvôli CPU. Spýtajte sa kohokoľvek s monitorom s vysokou obnovovacou frekvenciou, aké je ťažké v niektorých hrách udržiavať 100 + fps s aktuálnymi procesormi. Úprimne povedané, bez týchto nových rozhraní API a ich schopnosti efektívnejšie využívať výkon procesora by sa to len sťažilo. Zavedenie týchto nových rozhraní API by pre väčšinu ľudí mohlo znamenať obrovský nárast výkonu. Okrem toho by vývojárom tiež umožnilo zostaviť oveľa viac hier náročnejších na CPU ako v súčasnosti. Predstavte si napríklad hru ako Assasins Creed, ktorá má na obrazovke tisíce NPC naraz, pričom všetky sa vzájomne pohybujú medzi sebou a vašou postavou, keď cestujete po meste. Alebo hry ako Star Citizen, kde potrebujete veľmi silný procesor na získanie stabilného a prijateľného snímkového kmitočtu, môžu v blízkej budúcnosti vyžadovať priemerný procesor v najlepšom prípade a silný grafický procesor na udržanie pekného solídneho výkonu 60 snímok za sekundu.

Nakoniec je to veľmi vzrušujúci čas stať sa hráčom. Po uvedení týchto nových grafických rozhraní API by sme mohli vidieť najväčší skok v oblasti herných technológií za dlhú dobu. Dúfajme, že tieto rozhrania API dokážu naplniť humbuk, ktorý si sami vybudovali.

Nové grafické API a budúcnosť hrania na PC