Hirdetés

Miért nem alkalmazzák a stúdiók az Unreal Engine temporiális felskálázását?

Az Unreal Engine már a 4.19-es verzió óta támogatja az eljárást, de eddig a játékokba való beépítése még fél szemmel sem volt vizsgálva.

Az elmúlt héten egy érdekes kérdést merült fel a fórumokon belül, miután a FidelityFX Super Resolution vizsgálatakor többen is felrótták azt az egyes, Unreal Engine-t használó stúdióknak, hogy az AMD eljárása helyett engedélyezhették volna az Epic Games Temporal Anti-Aliasing Upsample shaderjét, amely ugyanúgy futna minden legalább shader modell 5.0-t támogató hardveren, miközben ennek is a lényege a felskálázás.

Elméletben a fentieket meg lehetne tenni, mert az Unreal Engine-ben a 4.19-es verzió óta be van építve a Temporal Anti-Aliasing Upsample, miközben az ennél is modernebb motorváltozatot használó Terminator: Resistance, Godfall és Kingshunt címekből hiányzik, helyette az érintett alkotások fejlesztői inkább FidelityFX Super Resolutionnek szavaztak bizalmat.

A felmerült kérdés ugyanakkor érdekes, hiszen valami oka biztos van annak, hogy az Unreal Engine 5-tel igencsak bereklámozott, Temporal Super Resolution néven futó, továbbfejlesztett Temporal Anti-Aliasing Upsample jelenleg nincs kihasználva. Megkérdeztük hát az érintett, Unreal Engine-t alkalmazó fejlesztőket, hogy miért is várták meg az AMD eljárását, miért nem aktiválták az Epic Games saját felskálázóját.

Érdekes módon mindenki ugyanazt a választ adta. Az Temporal Anti-Aliasing Upsample alkalmazhatósága az Unreal Engine aktuális futószalagjában nem optimális, ugyanis bizonyos effektek nem kompatibilisek vele, amelyeket a videojáték-motor a Temporal Anti-Aliasing Upsample aktiválásával rögtön ki is kapcsol. Ezzel ugrik pár, zömében utófeldolgozásra építő effekt (például a depth of field). Ezek egyébként elméletben kompatibilisek lehetnének a temporális felskálázási eljárásokkal, de nem úgy implementálva, ahogy az Unreal Engine 4.19 és 4.26 közötti motorverziók alkalmazzák. Ergo jelenleg vagy a Temporal Anti-Aliasing Upsample aktiválásáról kell lemondani, vagy újra kell írni az aktuális futószalag implementációval nem kompatibilis effekteket. Utóbbit egyébként az Epic Games maga is megteszi az Unreal Engine 5-re, tehát a probléma önmagától megoldódik egy-két év múlva.

A fentiekkel kapcsolatban megtudtuk, hogy ugyanez a gond a DLSS 2 Unreal Engine 4-es implementációjával is fennáll, ugyanis azt pont ugyanoda kell beintegrálni a futószalagon belül, ahol a Temporal Anti-Aliasing Upsample is működik. Emiatt pont ugyanazokkal az effektekkel nem lesz kompatibilis, azaz vagy a DLSS 2 aktív, vagy a vele inkompatibilis effektek. A DLSS 2 esetében azonban ez azért nem annyira szembetűnő, mert ha egy fejlesztő ezt implementálja, akkor kicseréli a nem működő effekteket egy temporális felskálázással kompatibilis eljárásra. De ezt nem minden fejlesztő tudja vagy akarja megtenni, így az sem kizárt, hogy egyszerűen csak általánosan kikapcsolják a nem működő eljárásokat, többek között a depth of fieldet.

Az fentebb említett címek esetében pont azért esett a választás a FidelityFX Super Resolutionre, mert annál nem kell egyetlen már megírt effektet sem lecserélni, esetleg kényszerűen kikapcsolni. Az eljárás szimplán működik bármilyen Unreal Engine 4-es effekttel, miközben pont ugyanarra a problémára kínál megoldást, amire az Epic Games Temporal Anti-Aliasing Upsample-je vagy az NVIDIA DLSS 2-je. Ráadásul nagyon nehéz jó minőségű és képi hibáktól mentes eredményt adó depth of field eljárást írni temporális felskálázáshoz, és ez sok fejlesztőt elriaszthat a probléma megoldásától, mivel több nagyságrenddel egyszerűbb a gondot szimplán megkerülni egy spatiális felskálázással.

Látható tehát, hogy okkal nem aktiválnak bizonyos eljárásokat a stúdiók. Ezek talán konzolparancsokkal előhívhatók, de akkor sem fognak jól működik a kezeletlen limitációik miatt, vagyis bizonyos effektek az aktiválásuk pillanatában működésképtelenné válnak.

Azóta történt

Előzmények

Hirdetés