Az Epic viszonylag váratlanul leleplezte az Unreal Engine 5-öt, amit ráadásul "játékmenet" felvétellel demóztak PlayStation 5-ön. Azért a zárójel, mert az anyag valós időben futott, tényleg valaki irányította a főszereplőt, azonban ez akkor is alapvetően csak egy techdemó, tehát tényleges játék nem fog készülni belőle.
Az viszont egyértelműen látszik, hogy az Epic ezúttal is egy generációs ugrást mutatott meg nekünk, és kiderült, hogy nagyjából mire lehet számítani a következő években. Mindehhez ráadásul a geometria feldolgozásának egy teljesen új, korábban még nem látott módját implementálták.
Legalábbis videójátékokban még nem látott módját, mert az itt Nanite névre elnevezett technológiát - ami egy mikro-poligonokra épülő motor - a filmes CGI területén már egy ideje használják.
A gyakorlatban ez azt jelenti, hogy a fejlesztők egy az egyben importálhatják a játékba a Zbrushban készített, teljes részletességű modelljeiket. Azokon semmit nem kell butítani és még LOD-fázisokat sem kell készíteni hozzájuk, az Unreal Engine 5 mindent megold teljesen magától.
Ez a demóban azt jelenti, hogy a 33 millió poligonból és 8K-s textúrákkal felvértezett szobrokból például az egyik helyiségben egyszerre 485 darabot láthatunk, ami összesen 16 milliárd poligont jelent. Korábban ennek még egy kis része is elképzelhetetlen volt hétköznapi hardvereken, ugyanakkor Tim Sweeney rámutat, hogy a mikro-poligonokra épülő renderelés nem új gondolat.
Már az 1980-as években gondolkoztak ezen szakemberek, akkor ez a REYES: Render Everything Your Eye Sees nevet kap. Ennek a lényege, hogy az engine rendereljen le mindent amit kell a lehető legnagyobb részletességgel, amit azonban az emberi szem nem látna, ott felesleges. Jelen esetben tehát ha egy poligon kisebb mint egy pixel, akkor azzal felesleges számolgatni, mert a különbség fizikailag nem észrevehető.
Így tehát az Unreal Engine 5 végső soron minden pixelre egy háromszöggel kalkulál ott, ahol ennek van értelme, ahol pedig nincs, ott észrevehetetlenül csökkenti a részletességet.
Az új motor teljesen magától játszik a részletesség szabályozásával, mégpedig úgy, hogy az kiszúrhatatlan legyen. Nincs többé pop-in a LOD-fázisok váltogatásának, ráadásul a grafikusoknak alacsonyabb minőségű, előre besütött normal mapokat sem kell legyártaniuk. Semmilyen trükközésre, csalásra nincs tehát szükség, minden azonnal áthozható a legnagyobb részletességben a modellező programból, Ezen kívül az engine támogatja a virtuális textúrázást, így nyugodtan használhatóak mindenhol 8K-s textúrák, ez nem fogja túlterhelni a GPU-t.
Az engine futószalagja nagyon érdekes, ugyanis a háromszögek jelentős részét szoftveresen, egy brutálisan optimalizált computer shaderes megoldással raszterizálja, így bizonyos feladatoknál a GPU hardveres raszterizálója teljesen kihagyható a folyamatból. Ez a PlayStation 5 esetében a primitive shadereket jelenti, azonban az Epic rámutat, hogy számos feladatban a hardveres raszterizálás még mindig a leggyorsabb, így az ilyen esetekben azokat használják.
Az árnyékolás és a bevilágítás is nagyon érdekes. Ezt a rendszert az Epic úgy nevezi, hogy Lumen, és tulajdonképpen egy átmenet az igazi ray-tracing és a korábbi hagyományos megoldások között. A végeredmény egy teljesen dinamikus globális bevilágítás, azonban jóval kisebb teljesítményigénnyel, mintha "valódi" ray-tracinget használna, és speciális hardveres komponensek sem kellenek hozzá a GPU-ban.
A jelenlegi játékok ugyebár egy "kamu" eljárással szimulálják a globális bevilágítást: előre kiszámolják, hogyan van bevilágítva az adott jelenet, majd ezt light mapok formájában ráteszik a különböző objektumokra. Ennek következtében azonban a fények később már nem változhatnak, és persze csak a statikus objektumokkal lehet ezt megvalósítani.
A Lumen tehát egyfajta sugárkövetéssel oldja meg az indirekt fényvisszaverést, azonban nem a rendkívül költséges, poligon-alapú sugárkövetéssel, hanem a jelenetben látható objektumok egyszerű (például voxeles) reprezentációjával számol.
Az Epic szerint azonban még csak nem is ez, hanem a virtuális shadow mapok behozatala jelentette a legnagyobb előrelépést - ezek tulajdonképpen olyanok, mint a virtuális textúrák, csak éppen az árnyékoláshoz. A mikro-poligonos motor ugyanis számos dologra lehetőséget ad, ami korábban nem volt megvalósítható, így most már nagyon hatékonyan tudnak renderelni virtuális shadow mapokba.
Az Unreal Engine 5 esetében a shadow mapoknál pixelenként egy texellel lehet számolni, ami csodás, nagyon sima és éles árnyékokat eredményez. Ez az Epic szerint a gyakorlatban 16K-s felbontású minőségnek megfelelő shadow mapokat hoz létre, miközben a jelenlegi generációban maximum 2K-s felbontásúakat tudnak használni, de inkább kevesebbet. A fejlesztők ezek mellé még számos apró trükköt bevetettek, hogy az árnyékolással kapcsolatos eddigi hibajelenségeket kiszűrjék, így elképesztően valósághű lett a megjelenítés.
"Ennek eléréséhez számos különböző komponensre van szükség. A legfontosabb persze a GPU, hiszen elképesztő mennyiségű geometriai adattal kell dolgozni, ehhez pedig sok-sok teraflops kell. A másik, ezeket hatékonyan kell betölteni és a streamelni. Jelenleg is ezerrel optimalizáljuk a motort az új konzolok elképesztő sebességű háttértáraihoz. Itt hatalmas előrelépésről beszélhetünk, és így menet közben ténylegesen be is tudjuk tölteni ezt a részletességet, holott egy az egyben nem férne be a memóriába. A PlayStation 5 ebben abszolút iránymutató, egyszerűen isteni háttértár-rendszere van, ami messze a PC-k előtt jár, de persze egy jó minőségű NVMe SSD-vel is nagy előrelépéseket lehet majd látni PC-n is" - mondta Sweeney, pontot téve arra a vitára, hogy az új konzolok SSD-inek nem lesz köze a grafikai minőséghez.
Az Epic egyébként nem csak, hogy valódi játékmenettel demózta a motort, de a teljesítménnyel kapcsolatban is meglepően nyíltan beszéltek. Mivel az egy pixel - egy poligon alapelv miatt a teljesítmény nagyban függ a felbontástól, az Unreal Engine 5 támogatja a dinamikus felbontást, így ha elkezdene túlterhelődni a GPU, csak visszavesznek a felbontásból. A demó egyébként többnyire végig 1440p-s felbontásban futott és 30fps-sel.
A motor ezen kívül a temporal accumulation nevű technológiát használja, ami tulajdonképpen azt jelenti, hogy az előző képkockák információit is használja a felbontás és a részletesség növelésére.
"Ez jóval több, mint egyszerű temporal anti-aliasing. A globális bevilágítási megoldásunk kizárt, hogy a jelenlegi hardvereken működni temporális információk nélkül, és a továbbiakban is nagyon komolyan fogjuk kutatni, hogy a különböző temporális komponensek hogyan segíthetnek a minőség és a sebesség javításában. Ennek segítségével fogunk egyre közelebb kerülni a filmes minőséghez" - mondta Sweeney.
Ezzel együtt az Unreal Engine 5 továbbra is marad igazi multiplatform motor, amivel készíthetők játékok okostelefonokra, a jelenlegi konzolokra, PC-re, Nindento Switch-re, meg persze az új konzolokra. Nyilván, a fentebb bemutatott látványos újdonságok kihasználásához nagyon erős GPU szükség, így azok csak az új konozlokon és PC-n fognak menni, de ezzel együtt is érdemes lesz váltani az Unreal Engine 4-ről, hiszen az 5-ös verzió megjelenésétől az fejlődik majd tovább, és senkit nem fog semmilyen hátrány érni a váltással, csak előny.
Ezzel párhuzamosan változik az Unreal Engine licencelési módszere is. Az előző modellben a fejlesztőknek negyedévente 3 ezer dolláros árbevétel fölött a bevétel 5%-át kellett leadniuk az Epicnek. Most azonban 1 millió dolláros bevételig semmit nem kér az Epic, csak az afölötti bevétel 5%-át szeretné megkapni a játék teljes élettartama alatt. De amennyiben az értékesítés az Epic Store-on történik, akkor minden licencdíjtól mentesül a fejlesztő.