Článek vznikl v rámci placené spolupráce se společností NVIDIA.

Vizuální stránka hraje ve hrách zásadní roli. Právě ona totiž nese lví podíl na atmosféře, zprostředkovává dějiště pro příběh a připravuje půdu pro samotnou hratelnost. A pokud je právě realističnost tím, co se vývojáři snaží předat, není se o čem bavit. V takovém případě rovněž platí, že Unreal Engine 5, navzdory svým početným nedostatkům, stále patří k technologicky nejpokročilejším komerčně dostupným nástrojům na trhu.

Nově vydaný díl Gears of War: E-Day jde navíc v jednom ohledu ještě dál než jakákoliv aktuálně vydaná hra. Ve spolupráci se společností NVIDIA se proto podíváme na zbrusu novou technologii, kterou titul využívá. Právě ústřední město hry Kalona se svým okolím tvoří dokonalé hřiště pro RTX Mega Geometry. Tuhle technologii podporují karty Nvidia GeForce RTX, které zakoupíte v obchodě Smarty.cz.

V případě Gears of War: E-Day jde o první nasazení její druhé generace. Co to v praxi znamená? Stručně řečeno: ray-tracing je díky ní zase o chlup přesnější. Tím to ale zdaleka nekončí. Abychom si to dokázali vysvětlit, je potřeba na to jít postupně. Jak ray-tracing funguje, jsme si rozebírali už mnohokrát; vždy jsme ale opomíjeli jeden zdánlivě drobný, přesto klíčový zádrhel, který stál maximální kvalitě v cestě. Ačkoliv je surový matematický výpočet paprsků přesný, je logicky přímo závislý na aktuální scéně – tedy na jednotlivých objektech, které tvoří místnost nebo svět. Tyto objekty, jak je koneckoncům základem 3D grafiky, se skládají z polygonů; ze sítě na sebe naskládaných trojúhelníků. Takřka nikdy tedy nemůže být 3D model dokonale přesnou kopií své předlohy.

Tohle se hry a enginy snaží obcházet různými způsoby. Unreal Engine 5 na to má technologii Nanite, která zvyšuje a snižuje počet polygonů objektu v závislosti na tom, jak daleko se kamera nachází. Vzdálenější objekty se nemusí vykreslovat v plné kvalitě a mohou být nahrazeny jen velmi hrubou reprezentací. Naopak u předmětů, u nichž jste blízko, je potřeba počet polygonů navýšit o celé řády, aby působily detailně a kvalitně. Takzvané LOD – Level of Detail – samozřejmě není žádnou novinkou. Zásadní rozdíl mezi Nanite a tradičním LOD ale spočívá v plné automatizaci a plynulém škálování. Místo aby grafici pro každý model ručně modelovali několik zjednodušených variant a složitě nastavovali vzdálenosti jejich přepínání, Nanite celý proces odbavuje v reálném čase sám. Výsledkem je plynulé přecházení mezi úrovněmi modelů, a pokud je vše integrované dobře, neměli byste si toho nikdy ani všimnout.

A v případě Gears of War: E-Day to funguje výborně. Ať už jde o suť, nebo vegetaci, hra si udržuje konstantní míru detailů bez rušivého problikávání či viditelných skoků v geometrii. Jenže to, že si toho nevšímáme my, neznamená, že to platí i pro engine v pozadí – v tomhle konkrétním případě hlavně pro výpočty ray-tracingu. Pro něj totiž doteď Nanite představoval zásadní překážku. Zjednodušeně řečeno: grafická rozhraní ani samotný engine dosud nebyly připraveny na to, aby s takto dynamickou geometrií pro ray-tracing efektivně pracovaly. Neustálé přepočítávání takzvaných akceleračních struktur způsobilo, že si mezi sebou procesor a grafická karta musely přehazovat tisíce příkazů… To v praxi vedlo k nepříjemnému zasekávání obrazu a obě technologie byly v jejich plné síle současně v podstatě nepoužitelné. 

Dosavadní řešení tohoto problému bylo poměrně přímočaré. Zatímco vy jste Nanite viděli v plné parádě, paprsky ray-tracingu viděly jen nekvalitní nízko-polygonovou verzi objektů. A v některých případech je dokonce neviděly vůbec. Výsledkem bylo, že se v odrazech, kontaktních stínech ani celkovém nasvícení scény mnohé prostorové detaily vůbec neprojevovaly – od jemných prvků, přes celé menší objekty, až po fakt, že dynamicky se pohybující vegetace byla z pohledu paprsků jen hromada hranolů bez jakýchkoliv detailů. A právě tento kompromis bourá druhá generace RTX Mega Geometry, kterou Gears of War: E-Day nasazuje a která se v budoucnu stane součástí nového standardu DirectX Raytracing 2.0.

Technologický posun představuje implementace takzvaných CLAS. V jádru se pro shluky trojúhelníků z Nanite objektů vytváří akcelerační struktury, které je potom grafická karta schopna streamovat dynamicky podle vlastních potřeb. Díky RTX Mega Geometry jsou NVIDIA GeForce RTX karty od Nvidie schopné hardwarové akcelerace daných instrukcí, což mimo jiné znamená, že grafická karta ve spolupráci s DirectX dokáže procesor zcela obcházet. Tudíž sestavování polygonových clusterů, správu grafické paměti, komunikaci s herním enginem i stavbu akceleračních struktur řeší grafická karta sama. Procesor tak není zahlcen jejím instruováním a může se starat o svoje věci, zatímco grafická karta, která na to má specializované čipy a architekturu, nemusí na ten procesor čekat. Je to jako když nemusíte čekat na nadřízeného technika, aby vám odsouhlasil každý krok, ale máte po ruce naprosto blbuvzdorný manuál.

Přesun zátěže na grafickou kartu má však i své neduhy. Hlavním zádrhelem jsou vyšší nároky na grafickou paměť. Právě do ní se totiž musí vejít samotné polygonové clustery i jejich nově vytvořené akcelerační struktury. To v praxi znamená dodatečnou zátěž – v případě Gears of War: E-Day o zhruba až 2 GB VRAM navíc. Z toho důvodu třeba nejde technologie vůbec zapnout na kartách, které mají méně než 12 GB VRAM. Druhým faktorem je pak samotný dopad na čistý výpočetní výkon. Akcelerační struktury, které určují, jestli se má paprsek vůbec pro daný cluster vypočítávat, jsou sice optimalizovány velmi dobře. Ale pořád se budou muset paprsky počítat vůči výrazně náročnější geometrii, než tomu doteď v případě Nanitu bylo. Naštěstí nejde o nějaký vysloveně propastný dopad. V závislosti na scéně se počet snímků za sekundu snižuje o přibližně pět až deset procent.

Samozřejmě je fér se na všechno podívat, pokrčit rameny, říct, že je to cool, a jednoduše uznat, že to nevidíte nebo nepotřebujete. Pravdou totiž je, že pokud nemáte přímé srovnání bok po boku, v mnoha situacích si nijak zásadního rozdílu opravdu nevšimnete. Ale to, že není vidět hned, neznamená, že tomu tak bude navždy. A v tom je to jádro pudla. RTX Mega Geometry je například poměrně dost vidět u vegetace. Rovněž pomáhá s konzistencí stínů a nasvícení u všeho, co je dynamické – ať už je to pohyb postav nebo jakákoliv deformace a destrukce prostředí.

A chtě nechtě, jde o další pádný argument pro existenci upscalingových technologií a generování snímků, jejichž vývoj jde také dopředu. Diskuze o DLSS 5 pohltila celý internet, ale kvůli němu se například téměř zcela pominula existence nové generace Ray Reconstructionu. Ten zase o míle dopředu vylepšuje takzvaný denoisingový algoritmus hrubých výpočtů ray-tracingu a výsledkem je mnohem čistější obraz, kvalitnější stíny a odlesky a hlavně jejich výrazně rychlejší vyčištění. Díky tomu se dlouhodobě známý problém, kdy nějakou dobu trvalo, než se zbarvení scény změnilo podle jejího zdroje světla, téměř eliminoval. A zrovna tak jde neustále dopředu řešení latence Frame Generationu nebo transformerové modely upscalingu.

Výsledkem je, že v mnoha aspektech stále záleží na tom, jak si to vlastně vývojáři všechno poskládají do sebe. Gears of War: E-Day podporuje DLSS 4.5, avšak zmiňovaný Ray Reconstruction hra nepoužívá – místo něho využívá interní řešení Unreal Enginu. Je to jeden z důvodů, proč některé odrazy a drobnější detaily vykazují artefakty. Z pohledu DLSS tak hra disponuje upscalováním a generováním snímků. Na GeForce RTX 5080 ve 4K s DLSS nastaveným na Výkon a generováním snímků na dvojnásobek se hra s Ultra nastavením dostala na průměrně 96 snímků za sekundu. Šestinásobné generování to vytáhlo na 220 snímků. A přitom se latence díky NVIDIA Reflex zvedla z průměrných 60 milisekund na 75 milisekund. To je samozřejmě problém pro kompetitivní hry, ne cover-shooter. Pro srovnání: nativní 4K a bez NVIDIA Reflex běželo na 36 fps s latencí kolem 90 milisekund. S NVIDIA Reflex pak kolem 65 milisekund. A společně se zapnutým ray-tracingem, tedy ray-tracovanými stíny, odrazy a globální iluminací, hra vypadá opravdu nádherně. Ať už v samotném městě nebo v malém lesíku.

Pointou RTX Mega Geometry a tohoto videa nebylo jen si předvést, že to, co bylo dobré předtím, je teď zase o trochu lepší. Ale vlastně se podívat i na tu vrstvu vývoje, která podobným technologickým pokrokům předchází, a zároveň se podívat i do budoucnosti. Díky existenci nové verze standardu DirectX Raytracing, která vznikla na základě pokroků NVIDIE, a kterou budou moci používat i další výrobci grafických karet, mohou nyní začít vývojáři využívat plné síly celého tohoto konceptu. Už teď ho ale půjde v pohodě využívat díky kartám NVIDIA GeForce RTX, které zakoupíte v obchodě Smarty.cz. Teď už budou moci grafici přestat úplně řešit tvorbu zjednodušených modelů. Lesy, celková vegetace a dynamické aspekty scén teď budou konzistentně kvalitní, osvícené a budou vrhat plně kvalitní stíny. Díky tomu si budou moci vývojáři dovolit přidávat do svých scén více fyzikálně simulovaných či deformovatelných objektů a prvků teselace, protože dříve či později už nebude nutné světlo vůbec zapékat. V grafické paměti už nebudou muset ležet celá nekomprimovaná geometrická data scén, takže mohou být mnohem detailnější a komplexnější. Protože se správa akceleračních struktur přesouvá na grafickou kartu, procesoru se uvolní ruce pro jeho vlastní úlohy – jako je řízení většího počtu postav, jejich AI logiky nebo výpočet složitější fyziky.

Jednou z potvrzených her, které by měly plně využít RTX Mega Geometry v budoucnu, je Zaklínač 4. U něhož všechny dosud zmíněné aspekty mohou znamenat zásadní posun dopředu. Jak to samozřejmě v praxi vývojářská studia využijí, ukáže až čas. Je potřeba nejdříve technologii dostat do mainstreamu a otestovat v nadcházejících hrách. Pár let to ještě potrvá. Ale vyhlídky do budoucnosti jsou dost zajímavé.