Dosud byl jasným grafickým benchmarkem pro historická RPG Zaklínač 3 (Alza.cz), na který se nedávno pokusilo vyšlápnout si Kingdom Come Deliverance, byť trpělo technickými nedostatky a do jisté míry ho limitoval licencovaný CryEngine.

Na nové standardy zpracování tradičních kamenných budov, majestátních hradů či středověkých měst bychom si měli zvyknout po příchodu Mount and Blade 2: Bannerlord (Alza.cz). TaleWorlds Entertainment totiž v aktuální verzi enginu 1.4 začali podporovat globální iluminaci, kterou předvedli v krásném oficiálním videu:

"Vývoj enginu probíhá v oddělených větvích, každá z nich je označena jako samostatná verze. To nám umožňuje testovat nové funkce důkladně a efektivně, aniž bychom snižovali stabilitu enginu pro herní programátory," uvedli v blogu.

Globální nasvícení - Do enginu jsme přidali nový globální systém nasvícení, který dokáže správně osvětlovat statické i dynamické objekty. Je založen na před-zapečeném systému nazvaném "Precomputed Radiance Transfer". Je nezávislý na atmosféře, což je pro hru jako Bannerlord nezbytnost, kde vstupujete do scény v různých fázích dne. Systém ukládá data nasvícení do sond v rámci normálnového rastru. Vyvinuli jsme spoustu automatických nástrojů, aby měli grafici co nejméně práce se zapékáním scén. Díky těmto nástrojům budou moddeři moci do svých scén zapékat globální nasvícení.

Compute Shader skinování - Profilováním jsme si ověřili, že ve velkých bitvách GPU většinu času zabere skinování agent meshů. Obvykle se proces skinování opakuje vždy, když je potřeba vykreslit mesh (cyklus stínování, gBuffer cyklus, speciální cyklus pro vlastní stínování vlasů apod.). Abychom se tomu vyhnuli, přesunuli jsme výpočty skinování skeletálních meshů z fáze vertex shaderu do samostatné compute shader fáze. Přestože obě fáze běží na GPU, rozdělení skinování a ukládání výsledků do dočasné paměti do samostatných fází nám umožňuje provádět skinovací výpočty pouze jednou za snímek a lze používat speciální optimalizační mechanismy, které jsou určené výlučně pro compute shadery. Díky tomu se sníží doba renderování meshů o 60 %, což nám umožňuje dosáhnout 60 FPS v obrovských bojových scénách na širokém spektru grafických čipů.

Atlas částicového shadingu - Částice se nyní stínují v samostatné compute shader fázi. Každá viditelná částice je přiřazena obdélníkové oblasti (2x2, 4x4, 8x8, 16x16 nebo 32x32) ve velkém globálním atlasu textur podle velikosti na ploše obrazovky. Stínování se provádí na těchto malých čtyřúhelnících v compute shader fázi. Během vlastního renderování použijeme pouze záznam z atlasu textur a vynecháme veškeré složité výpočet osvětlení. Oddělením stínování a vykreslování jsme snížili nároky na fill rate, protože jsme výrazně omezili množství stínovaných pixelů. To snižuje vysoké zatížení GPU při poušti-podobných scénách. Tato technika také eliminuje ostré stíny částicových čtyřúhelníků, což dále zvyšuje vizuální kvalitu už tak krásných částic v Bannerlord!

Považujeme za důležité v tuto chvíli zdůraznit skutečnost, že i když stále pokračujeme ve vývoji enginu a přidáváme nové funkce, tato činnost probíhá jako paralelní proces s vývojem Bannerlord. Náš tým specializovaný na vývoj enginu neustále usiluje o jeho lepší optimalizaci - to umožní epičtější bitvy, vyšší snímkovou frekvenci, realističtější grafiku a kratší dobu nahrávání. Tato práce v žádném směru nemá vliv na rychlost vývoje vlastní hry, ve výsledku zlepší celkovou kvalitu konečného produktu.

- komentáře (0)

Schovat komentáře s nízkým hodnocením
Pořadí
Vlákna

Související obsah