AW: RDNA2-Grafikkarten: AMD spricht heute über Raytracing
Was mich da interessiert, wird RDNA ff. auch auf extra ausgewiesene Rechenkerne setzen oder läuft das bei AMD doch über Software? Vielleicht gibts eine abgespeckte oder Übergangslösung, ich hab da immer noch irgendwie diese Demo von Crytek im Kopf, die ja auf ner Vega lief.
AMD hat die Raytracing-Funktionalität in Form dedizierter Funktionseinheiten in die TMUs (Texture Mapping Units) gesteckt, u. a. um deren große Caches mitnutzen zu können. (
M.Cerny hat das wohl im Rahmen seiner PS5-Vorstellung bestätigt.) Das zugehörige Patent hat AMD im Dezember 2017 aufgegeben.
Schlussendlich ist für den Endkunden lediglich relevant, dass auch hier dedizierte Hardware vorhanden ist, die größtenteils parallel zum übrigen Teil der GPU arbeiten kann. (
Was dabei am Ende rauskommt, sprich wie gut, effizient, leistungsstark die RDNA2-Implementation ist, wird man in ersten Benchmarks sehen.)
Crytek's Neon Noir-Demo ist dagegen eine vollkommen eigene Sache. Die Cryengine hat bereits seit v3.8 (2HJ15) eine Voxel-based Global Illumination implementiert *), die konkret eine Variante der Sparse Voxel Octree Total Illumination implementiert. Beispielsweise in Kingdom Come Deliverance wird diese auch verwendet und ermögliche eine GI, die auch halbwegs performant mittels Voxeln berechnet werden kann.
Mit der Cryengine 5.6/5.7 hat man den Ansatz mit Blick auf Raytracing-Effekte erweitert, um so u. a. Reflektionen effizient berechnen zu können. Die Implementation läuft zwar über die Cryengine, also in Software, kommt ohne leistungsstarke Shader Prozessoren einer GPU aber nicht aus. Der Vorteil von Crytek's Ansatz ist, dass der nur "irgendeine" leistungsstarke GPU mit hoher Compute-Leistung braucht und keine spezielle Hardware. Mit dedizierter Hardwareunterstützung wird das Ganze aber natürlich dennoch deutlich schneller berechnet und ermöglicht weitaus komplexere Szenen und dementsprechend plant Crytek zukünftig auch in v5.7+ DX12 und Vulkan zu unterstützen, um auf diese Weise herstellerneutral direkt auf eine entsprechende Hardwarebeschleunigung zugreifen zu können. **)
*) Ein entsprechendes Gegenstück von nVidia ist bspw. deren VXGI, das auch in die Unreal Engine eingebunden werden konnte und seit etwa 2013 in der Entwicklung ist. Mit der nun im Markt befindlichen Raytracing-Hardware, wird deren VXGI aber wohl nur noch geringe Aufmerksamkeit zukommen.
**) Wahrscheinlich können sie ihre Engine hier relativ einfach skalieren, indem sie bspw. einfach die Refresh-Berechnungen pro Zeitintervall erhöhen und/oder die verwendeten Voxel für eine höhere Genauigkeit verkleinern.
Unterm Strich bleibt aber natürlich auch die Frage nach der Relevanz der Cryengine ... Ich weiß nicht, was noch so auf den Konsolen (kürzlich) erschien, aber aktuell scheinen Entwickler ohne Inhouse-Engine eher andere Engines als die Cryengine zu präferieren.