Az Unreal Engine 5 legújabb változatai olyan rendszereket tartalmaznak, amelyek célja a shader-összeállítási problémák megelőzése, de az a baj, hogy nem működnek tökéletesen… így a szaggatás megmaradhat!
Ha a fejlesztők nem szánnak időt arra, hogy jó behangolják ezeket a rendszereket, akkor állítóleg az Epic Games által biztosított rendszerek nem működnek megfelelően. A Digital Foundry csapata a heti podcastjük során áttekintette az Epic által az Unreal Engine hivatalos weboldalán megosztott friss blogbejegyzést, amelyben részletesen leírják, hogy miért fordulnak elő a shaderek cache-eléséből akadozó… akadozások, kiemelve, hogy a korábban tervezett shaderkompilációs folyamat a Direct3D 11-ben a shader kód növekedésével elérte a töréspontot, és hogyan kezelték ezt a modern API-kban, mint a Direct3D 12 és a Vulkan a PSO-k, azaz a Pipeline State Object (PSO) bevezetésével, ami sok más problémát is magával hozott (még az Unreal Engine-ben is) annak ellenére, hogy az engine megoldásokat kínál a fejlesztők számára a PSO-k összeállítására úgy, hogy a játék teljesítménye ne szenvedjen csorbát.
A blogposzt foglalkozik azzal a tévhittel is, hogy a shader-összeállítással kapcsolatos szaggatások a DirectX 12-ben jelentek meg, mivel ezek a megnövekedett shader-kód és az általános összetettség következményei, nem pedig bármi olyan, amit az API bevezetett az előző verzióhoz képest. Viszont itt jön az érdekesség: hiába hozta az Epic Games el ezt a megoldást, hogy csökkentsék a szaggatásokat, a fejlesztőknek plusz munkát kell elvégezniük!
A műszaki beállítottságú fejlesztők által a Digital Foundry munkatársának, Alex Battagliának elmondottak szerint ezek a rendszerek nem működnek az Unreal Engine korábbi verzióiban (5.1 és 5.4 között), ugyanis speciális munkát igényelnek ahhoz, hogy valóban a tervezett módon működjenek. Viszont a Digital Foundry ennek ellenére is ígéretesnek tekinti az Epic Games blogposztjában felvázoltakat. A globális shaderek kezelése (ami sok játékban bajos), valamint a hardver- és szoftvergyártókkal való együttműködés a driverek és a grafikus API-k adaptálása érdekében mind fontos, ugyanis így az engine későbbi verziói jobb élményt adhatnak.
Az Unreal Engine 5 jelenleg az 5.5-ön áll, amiben a nagy újítás a MegaLights, ami a fények Nanite-ja lehet.
Forrás: WCCFTech, Epic Games