Raytracing in Spielen III: Quake Wars mit Raytracing

 5/5
Daniel Pohl
99 Kommentare

Die Zukunft von Raytracing

Wie bereits erwähnt, ist das Erzeugen realistisch aussehender Schatten auch mit Raytracing kein Kinderspiel. Analysiert man den aktuellen Stand unserer Demo, so bemerkt man, dass derzeit nur harte Schatten erzeugt werden. Moderne Spiele gehen jedoch mittlerweile mehr in die Richtung von weichen Schatten, die in den meisten Fällen noch mehr Strahlen benötigen würden. Dieses wichtige Thema bedarf intensiver Forschungsarbeit.

Um möglichst qualitativ hochwertige Bilder zu erzeugen, benötigt man zudem Anti-Aliasing. Adaptives Super-Sampling ist ein cleverer Ansatz, mit dem man eine Szene genau dort verfeinern kann, wo sich der Aufwand auch lohnt. Es gibt bereits experimentelle Implementierungen dieser Technik in Raytracing, jedoch müssen sie noch mehr getestet und für die bestmöglichen Ergebnisse optimiert werden. Nachdem sich die Industrie von den Multi-Core-Architekturen zu den Many-Core Architekturen (>10 Kerne) bewegt, wird es auch hier interessant sein, die Algorithmen zu verbessern, um die neu gegebene Hardware optimal ausnutzen zu können.

Obwohl Intels anstehende Many-Core Architektur namens „Larrabee“ hauptsächlich als Rasterisierungskarte entwickelt wurde, so ist sie dennoch ebenfalls komplett frei programmierbar. Dies eröffnet einige sehr interessante Möglichkeiten, um Raytracing auf der Larrabee-Architektur auszuführen.

Mein Dank geht an dieser Stelle neben meinen Kollegen auch an das Team von Intels „Visual Adrenaline“-Magazin, in dem sich eine englischsprachige Version dieses Artikels befindet. Ebenso ein Dankeschön an ComputerBase für das Hosten dieses Artikels. Und vielen Dank allen Lesern für die Aufmerksamkeit!

Das Performance-Problem

Performance ist der Hauptgrund, warum Raytracing derzeit noch nicht in kommerziellen Spielen benutzt wird. Verglichen mit einer spezialisierten Rasterisierungshardware (beispielsweise aktuelle GPUs von ATi oder Nvidia) ist Raytracing relativ langsam. Die fehlenden Hardware-Textureinheiten in unserem CPU-basierten Ansatz bringt einen großen Performanceeinbruch beim trilinearen Filtern aller Textursamples. Mit dem neuesten Intel-Quad-Socket-System (ausgestattet mit einem 2.66-GHz-Dunnington-Prozessor (6 Kerne) in jedem Sockel; macht insgesamt 24 Kerne) erreichen wir im Spiel zwischen 20 und 35 Frames pro Sekunde bei einer Auflösung von 1280 x 720 Pixel.

Nichtsdestotrotz ist dies eine enorme Verbesserung gegenüber den Experimenten aus dem Jahre 2004, die 20 Maschinen benötigten, um ein einfacheres Spiel langsamer in geringerer Auflösung zu rendern. Die größten Performance-Verbesserungen kommen von der weltweit betriebenen Forschungsarbeit auf dem Gebiet Raytracing und den neuen Plattformen mit mehreren Kernen, die die Parallelität von Raytracing ausnutzen.

Über den Autor

Daniel Pohl - AutorDaniel Pohl begann das Erforschen von Echtzeit-Raytracing für Spiele während seines Informatikstudiums an der Universität Erlangen-Nürnberg im Jahr 2004. Im Rahmen seiner Diplomarbeit hat er eine Version von Quake 4, die Raytracing benutzt, geschrieben. Im Jahr 2007 trat er der Raytracing-Gruppe bei Intel bei. Im Jahr 2008 zog er von Deutschland ins sonnige Kalifornien, wo er die Arbeit an spiele-relevantem Raytracing bei Intel fortsetzt.

Weitere Informationen

Dieser Artikel war interessant, hilfreich oder beides? Die Redaktion freut sich über jede Unterstützung durch ComputerBase Pro und deaktivierte Werbeblocker. Mehr zum Thema Anzeigen auf ComputerBase.