Hirdetés

Ezért jött hardveres sugárkövetés nélkül a Hellblade II

A Microsoft saját nagy címe ötközött bele először a DirectX Raytracing masszív limitációjába.

A tegnapi napon elérhetővé vált a Senua's Saga: Hellblade II című alkotás, ami a Microsoft egyik húzócímének számít, főleg akkor, ha a grafikai megvalósítást nézzük. Ezért is érdekes, hogy a játékból teljesen hiányzik a hardveres sugárkövetés, vagyis a DirectX Raytracinget, azaz a DXR-t egyáltalán nem használja.

A fentiek várhatók voltak, hiszen régebben is megjegyeztük már, hogy a DXR működése a programozható bejárás hiányában nagyon limitált, ha nagyon részletes geometriát kell megjeleníteni. Többek között az Ubisoft által kiadott Avatar: Frontiers of Pandora ezért is használ compute shader-alapú bejárást, hogy ezeket a limitációkat megkerülje, és a Senua's Saga: Hellblade II is az Unreal Engine 5 Lumen rendszerének a módosításával él, ami az alapötletet tekintve hasonló elgondolások mentén dolgozik.

A helyzet igazából nagyon cukinak számít, mivel a fejlesztőknek dönteni kell a részletes geometria, illetve a hardveres sugárkövetés mellett. A kettő együtt a DXR aktuális verzióival nem működik. Persze technikailag megoldható lenne a futtatás, de olyan extrém memóriaigényt jelentene, amihez nem áll rendelkezésre elég VRAM a mai VGA-kon.

Természetesen a Senua's Saga: Hellblade II grafikájára egyáltalán nem lehet panasz, és jól mutatja, hogy hardveres sugárkövetés nélkül is nagyon jó minőség hozható ki, relatíve jó sebességgel. Ez pedig egyértelmű jelzés arra, hogy a DXR aktuális verziói miért hatalmas zsákutcák a programozhatóság hiányában. Ha egyszerűen egy bizonyos geometriai részlegesség felett működésképtelen a hardveres sugárkövetés, akkor az nagyon erős kompromisszumnak számít a mai világban, és ha figyelembe vesszük, hogy mennyire hatékonyan működik a Nanite nevű virtualizált geometriát biztosító rendszer a szóban forgó játékban, akkor megérthetjük, hogy miért a hardveres sugárkövetést áldozzák be a fejlesztők, nem pedig a geometriai részletességet.

A megoldás egyébként a DXR újragondolása lenne, ami egyébként már jó ideje terítéken van, és a Microsoft már a 2020-as év végén jelezte, hogy dolgoznak a traversal shaderen, ami a bejárást programozhatóvá tenné. Ugyanakkor ez nagyon nehezen megvalósítható az aktuális DXR-en belül, mivel a jelenlegi szabvány nem biztosít nyílt BVH adatstruktúra-formátumot, vagyis ezt is le kell cserélni egy másikra, hogy a traversal shader realitást legyen, ami a kompatibilitás szempontjából nem lesz feltétlenül kedvező a jelenlegi hardvereket figyelembe véve. Ugyanakkor sok választása nincs az iparnak, a Nanite-féle, virtualizált geometriához hasonló rendszerekkel nehezen alkalmazható hardveres sugárkövetés akkor, ha az API nem ad módot az egyedi BVH bejárási logika kidolgozására.

Előzmények

Hirdetés