Unreal Engine 5 řeší největší problém v PC grafice

Respekt dt doporučený obrázek 2
Tento příběh je součástí série ReSpec Jacoba Roacha, která pokrývá svět počítačových her a hardwaru.

Během jeho Stav neskutečné adresy na GDC 2023 společnost Epic oznámila rozsáhlou sadu funkcí pro Unreal Engine 5.2. Ale možná nejvíc důležitá funkce přicházející v aktualizovaném enginu se netýká osvětlení, detailů geometrie nebo paprsku trasování. Vše je o výkonu.

Obsah

  • Vzpomeňte si na koktání
  • Vše pro Fortnite
  • Stále je z čeho být nadšený

Doporučená videa

Unreal Engine hry, ať už správně či neprávem, byly v posledních letech spojovány s koktáním a zádrhely. S novým vydáním Epic konečně řeší problém čelem, takže jsem si řekl, že je nejvyšší čas rozebrat, proč hry Unreal tak běžně ukazují koktání, co Epic dělá, aby problém vyřešil, a kdy můžeme očekávat, že se tyto snahy projeví v nových vydáních.

Vzpomeňte si na koktání

Čas snímku v Gotham Knights na PC.
Tyto špičky snímkové doby se v Gotham Knights projevují jako vážné koktání.

Během několika posledních let se Unreal Engine stal synonymem pro koktání. Viděli jsme to znovu a znovu, od 

Star Wars Jedi: Fallen Order na Zbloudilý na Gotham Knights, a všechny mají stejný problém. Je to koktání kompilace.

Obvykle uslyšíte o zasekávání kompilace shaderů, ale nedávné zdroje problémů nejsou způsobeny jednotlivými shadery. V poslední grafice API jako Vulkan a DirectX 12, balíčky známé jako Pipeline State Objects (PSO) využívají k informování hry o stavu vašeho GPU. Záměrem PSO je zefektivnit vykreslování a umožnit propojení desítek parametrů, včetně shaderů, mezi API a GPU v jediném balíčku.

Představují však jiný problém. Protože PSO obsahují tolik informací, generování nového za běhu trvá dlouho (podle do dokumentace Unrealu, 100 nebo více milisekund). Tato tvorba PSO za běhu je zdrojem zadrhávání, kdy motor musí generovat nové PSO, zatímco vy skutečně hrajete.

Aby se tomu zabránilo, je v Unreal Engine k dispozici ukládání do mezipaměti PSO. Tím se vytvoří mezipaměť možných PSO, takže nové není třeba generovat, když hrajete hru, ale nejsou dokonalé. Jak vysvětluje Epic, předběžné ukládání do mezipaměti PSO může být „pro velké projekty zatěžující a přesto může v mezipaměti zanechat mezery, které vedou k zádrhelům“. To je důvod, proč i ve hrách, které předkompilují shadery na GPU, stále občas zaznamenáte koktání (i když je jich málo a daleko). mezi).

Epic se snaží tento proces automatizovat tím, že shromažďuje PSO, místo aby ponechal vývojářům, aby zohlednili každý možný parametr GPU. Je to na Veřejná cestovní mapa Epic, ale nyní je k dispozici pouze experimentální verze. V Unreal Engine 5.2 je cílem vylepšit ukládání do mezipaměti PSO, aby se dále snížily problémy.

Vše pro Fortnite

Scéna Fortnite běžící v Unreal Engine 5.

V Unreal Engine 5 je toho hodně, na co se můžeme těšit (k něčemu se dostanu příště), ale zatím nemáme jasnou představu o tom, jak engine funguje. Dosud byl použit pouze v technických ukázkách a Fortnite mezi hlavními vydáními. Dokonce i hry jako Redfall kteří slíbili využít Unreal Engine 5, přešli na Unreal Engine 4.

Aby bylo jasno, nástroje dostupné v Unreal Engine 4 umožňují vývojářům optimalizovat jejich hry, aby se vyhnuli zadrhávání. Atomové Srdceje jedním z mnoha příkladů toho. Složitý stav PSO však ponechal během hraní dveře otevřené zádrhelům a automatické shromažďování PSO společnosti Epic bylo představeno až v Unreal Engine 5.1.

I když jsem rád, že Epic řeší problém přímo, ještě jsme neviděli automatickou mezipaměť PSO v procesu. S tím, jak od menších týmů vycházejí komplikovanější a rozmanitější verze, poptávka po generování PSO stoupá a možnost zádrhelů a zadrhávání se zvyšuje.

To se týká zejména her, které zahrnují sledování paprsků, protože Unreal Engine 5 nepodporuje ukládání do mezipaměti PSO sledování paprsků PSO. Tak jako Nvidia vysvětluje, je možné rozdělit práci na vytváření ray tracing PSO do více vláken, ale to nutně neznamená, že vývojáři budou tento proces používat.

Stále je z čeho být nadšený

Osvětlení v Unreal Engine 5.

Stále potřebujeme vidět automatické shromažďování PSO v Unreal Engine 5, ale ve skutečnosti je v enginu spousta vzrušení. V první řadě Lumen. Osvětlení je extrémně důležité pro věrnost grafiky a jsou zde představeny drahé techniky, jako je osvětlení s trasováním Portál RTXjsou náročné na hardware. Lumen rozděluje rozdíl.

Lumen využívá ray tracing, ale je to vysoce optimalizovaná forma sledování paprsků. Namísto pečlivého počítání nekonečných odrazů na detailních objektech používá Lumen abstrakce pro výpočet osvětlení pro většinu scény, přičemž výchozím nastavením je pouze podrobné osvětlení nejblíže k Fotoaparát. Tato optimalizace umožňuje, aby Lumen běžel se softwarem sledování paprsků, opuštění potřeby mít vyhrazené sledování paprsků urychlovače na vašem grafická karta.

Výsledky jsou již jasné. Fortnite běží na konzolích s Lumen rychlostí 60 snímků za sekundu (fps) a na PC vypadá úžasně, a to i v Fortnite's kresleným světem.

Prezentace Nanite v Unreal Engine 5.

Nanite pracuje v tandemu s Lumen. Je to virtualizovaný geometrický systém, který obsahuje vysoce detailní, vysoce komprimované sítě, které se mohou během hry upravit. Jde v podstatě o komplexní úroveň detailů (LOD) pro sítě, které automaticky přepínají mezi detailními a vágními sítěmi v závislosti na tom, kam se kamera dívá.

Ještě důležitější je, že Nanite běží na svém vlastním vykreslovacím průchodu, takže není zachycen v tradičním potrubí GPU. To znamená, že vaše hra zůstane plynulá, i když Nanite mění složitost sítě. Mezi Nanite a Lumen máte dvě vizuálně působivé, výpočetně efektivní funkce, které zvyšují laťku grafické věrnosti.

Epic však sdílel více během svého projevu State of Unreal. Substrát je nový materiálový systém v Unreal 5.2, který zahrnuje podrobnější ovládání shaderu. Epic to předvedl s opálovým povrchovým materiálem, který předvádí více vrstev a přesný lom světla v nich.

Opálový materiál v Unreal Engine 5.

Nový Procedural Content Generation Framework (PCG) je také vzrušující, i když se přímo netýká vizuální věrnosti. S omezeným vstupem může PCG generovat nové objekty, které vývojářům umožní rychle vytvořit světy s vysokou úrovní detailů. To je vzrušující pro rozsáhlejší světy, které nepotřebují dotek umělce na každém rohu.

Je toho ještě spousta, od vylepšení v MetaHuman až po úplné sledování cesty v rámci Unreal Engine. Je to vzrušující, ale problémy s koktáním běžně spojené s vydáními Unreal Engine přetrvávají. Doufejme, že pokrok společnosti Epic v ukládání do mezipaměti PSO může tento problém obejít, ale zatím nemáme mnoho her Unreal Engine 5, abychom viděli, jak tento systém funguje.

Tento článek je součástí ReSpec – průběžný dvoutýdenní sloupek, který zahrnuje diskuze, rady a podrobné zprávy o technologiích, které stojí za hraním na PC.

Doporučení redakce

  • Snažil jsem se znovu prožít zapomenuté dědictví Halo jako franšízy pro Mac – a byla to katastrofa
  • S exkluzivními PC partnerstvími prohrává každý
  • Nejhorší PC porty všech dob – a proč byly tak špatné
  • Jak generativní AI vytvoří hry s „širšími, většími a hlubšími světy“
  • Star Wars Jedi: Survivor je recenzně bombardován na Steamu jako „totální blbost“ PC port