Auch für Radeon: Crytek zeigt Raytracing-Demo für kommende CryEngine

Michael Günsch et al. 280 Kommentare
Auch für Radeon: Crytek zeigt Raytracing-Demo für kommende CryEngine
Bild: Crytek

Crytek liefert einen Vorgeschmack für Echtzeit-Raytracing in einer kommenden Fassung der CryEngine. Die neue Demo heißt Neon Noir und wurde auf einer Radeon RX Vega 56 in Echtzeit gerendert. Das ist möglich, weil die Implementierung von Crytek nicht nur mit den GeForce RTX von Nvidia funktioniert.

Raytracing auf Voxel-Basis

Crytek nutzt eine auf Gitterpunkten (Voxel) basierende globale Beleuchtung, Voxel-Based Global Illumination (SVOGI) genannt. Sie setzt keine dedizierten Raytracing-Einheiten wie Nvidias RT-Cores in Turing voraus, sondern läuft laut Crytek auch auf herkömmlicher „Mittelklasse-Hardware“ von AMD und Nvidia. Die finale Implementierung der Technologie soll allerdings auf die neuesten GPUs optimiert werden.

Neon Noir was developed on a bespoke version of CRYENGINE 5.5., and the experimental ray tracing feature based on CRYENGINE’s Total Illumination used to create the demo is both API and hardware agnostic, enabling ray tracing to run on most mainstream, contemporary AMD and NVIDIA GPUs. However, the future integration of this new CRYENGINE technology will be optimized to benefit from performance enhancements delivered by the latest generation of graphics cards and supported APIs like Vulkan and DX12.

Crytek

Ein Teil der Arbeit übernimmt auch die CPU, die für jeden Frame in Echtzeit ein Voxel-Abbild erstellt – inkrementell, wie CryTek schreibt. Auf der GPU werden dann für jeden Frame „tausende Strahlen“ durch das Gitternetz und die Shadow Maps verfolgt. Indirektes Licht soll sich so von statischen und „den meisten dynamischen“ Objekten verfolgen lassen. Für dynamische gilt das aber nur dann, wenn sie sich naher der per Voxel abgebildeten statischen Geometrie befinden. Indirekte Schatten können wiederum ausschließlich von statischen Objekten berücksichtigt werden.

Derzeit noch mit Einschränkungen

Auf Partikel oder fließendes Wasser sollen sich die Effekte bisher noch nicht anwenden lassen. Weitere Einschränkungen sind ein Versatz von ein bis zwei Frames bei der Darstellung von indirekter Beleuchtung und dass es durchaus ein paar Sekunden dauern kann, bis das System funktioniert, wenn die Kamera an einen komplett anderen Ort springt – offensichtlich benötigt die initiale Berechnung der Voxel-Umgebung viel Zeit.

CryTek spricht in diesem Zusammenhang allerdings von „aktuellen Limitierungen“, will die Probleme also noch angehen. Die von Crytek bereitgestellte Sequenz aus der Demo kann sich allerdings schon mit dem aktuellen Entwicklungsstand sehen lassen. Ein handfester Vergleich zur Umsetzung in DirectX 12 mit DXR, das von Nvidia RTX genutzt wird, ist nicht möglich.

Wann genau die CryEngine im Laufe des Jahres die neue Funktion erhält, ließ Crytek offen.