Frisch vom Index gestrichen kann ich meine Gedanken zur mit globale Beleuchtung per Pathtracing ausgestatteten Varianten von Quake 2 teilen.
Ports und aufgebohrte Versionen von id Software Spielen haben eine gewisse Tradition, da die Entwickler bis zu Doom 3 die Quelltexte ihrer Spiele veröffentlichten. Das ermöglichte es Hobby-Entwickler und anderen Enthusiasten nicht nur, die Spiele auf die obskursten Plattformen zu bringen, sondern auch neue Features einzubauen. Aktuell für einiges an Aufmerksamkeit erzeugt Quake 2 RTX, eine Version des Spiels mit neuem Renderer, der die globale Beleuchtung per Pathtracing berechnet und Nvidias Raytracing Erweiterungen nutzt. Da das bisher nur von wenig Spielen unterstützt wird erzeugt es schonmal eine gewissen Aufmerksamkeit, dazu ist die Version grundsätzlich kostenlos, wer das Grundspiel nicht hat kann die Demo mit den ersten drei Level spielen. Multiplayer geht auch und soll auch mit der Original-Version kompatibel sein, das habe ich aber bisher nicht ausprobiert.
Hinweis: der Text bezieht sich auf Version 1.1.0, zukünftige Versionen habe ich in diesem Text bisher nicht berücksichtigt. Sollte ich es nochmal spielen wird es evtl. ein Update geben.
Inhalt
Gameplay
Traditionell fange ich ja mit der Technik an, aber da die in diesem Fall der deutlich interessantere Teil ist und das Gameplay sich nicht verändert hat, kann ich das kurz abhandeln.
Das Gameplay entspricht dem was man von einem Shooter der Pre-Half-Life-Ära erwartet: keine große Story, sondern gradlinige Shooter-Action. Neu im Vergleich zum Vorgänger (der außer dem Namen absolut nichts damit gemein hat, was aber eine eigene Geschichte ist) schließen die Level besser aneinander an und sind keine komplett in sich geschlossenen Bereiche. Man wechselt auch öfters zwischen den Teilen hin- und her, um z.b. Türen per Schalter zu öffnen oder Keycards zu sammeln. 1997 war Speicher noch deutlich begrenzter, da ging wohl nicht alles, was sich die Designer vorgestellt hatten rein, Streaming war noch komplett unbekannt. Trotzdem sind die Levels recht groß (für damalige Verhältnisse) und vertrackt, wenn auch nicht die selben, abstrakten Labyrinthe des Vorgängers, sie sind deutlich glaubwürdiger.
Eine weitere Neuerung im Vergleich zu Quake 1 ist das Inventar: Waffen, Items und Power-Ups werden alle darin verzeichnet und gespeichert. Es gibt kein grafisches Menü, nur eine Anzeige im HUD welches Item ausgewählt ist, per Tastendruck kann man die durchschalten, was arg umständlich ist. Vor allem das die Waffen auch drin sind bläht das Ganze unnötig auf, für die gibt es schließlich separate Tasten. Einen nicht zu unterschätzenden Vorteil hat es aber: man kann Power-Ups wie ein Quad Damage einfach mitnehmen und zünden, wenn es am besten passt. Das macht die Bosskämpfe aber viel zu einfach, ein Power-Up plus Chaingun und selbst der Endboss fällt in Sekunden. Die Auswahl an Schießprügeln fällt sehr Umfangreich aus, ohne dass nur stumpfe Upgrades dabei sind: die Chaingun haut zwar ordentlich rein, die Munition ist aber auch schnell leer, die Mashinegun ist da genügsamer, verzieht dafür recht stark. Die Waffen unterscheiden sich auch an kleinen Details: während die Chaingun erst anlaufen muss, kann der Hyperblaster nach eine Schusssalve erst wieder feuern nachdem seine rotierende Spitze in die Ausgangsposition zurück angekommen ist.
Ein paar Nachteile hat die Version aber gegenüber dem Original, auch wenn sie teilweise schon ausgemerzt wurden: die erste Version musst noch ohne die Music von Sonic Mayhem auskommen, mit der aktuelle 1.1.0 kann man sie aber nutzen, dafür muss man die Dateien, am besten aus der Version von GOG, in einen bestimmten Ordner kopieren. Was noch nicht unterstützt wird ist das Abspielend er kurzen Videobriefings im Spiel, dadurch verliert man etwas den Zusammenhang der Story zum Oberkommando, ich fühlte mich mehr als Einzelkämpfer, zumal die gelegentlichen Audio-Instruktionen durch ihre niedrige und arg verrauschte Qualität in der Action schnell unter gehen. Aber da die Story nicht der stärkste Punkt des Spiels ist, kann ich darauf verzichten.
Die Technik
Jetzt geht es aber ans Eingemacht, die Neuerungen an der Technik, speziell dem Renderer sind das wichtige an diesem Port. Ein wenig wiederholt sich hier die Geschichte, denn Quake 2 setzte damals zwingend einen 3D-Beschleuniger voraus. Die waren 1997 noch nicht Standard, rein per Software auf der CPU berechnete Grafik war durchaus üblich. Quake 2 RTX setzt zwingend eine Grafikkarte vorraus, welche die Nvidias Raytracing-Erweiterungen für die Vulkan-Render-API unterstützt. Das sind neben den mit Hardwarebeschleunigung versehenen RTX-Karten auch die älteren 1000er-Karten ab der GTX1060 mit 6GB VRam und die 1600er-Karten der Turing-Generation, aber ohne spezialisierte RT-Cores. Ohne eine solche Karte (und eine entsprechend aktuellen Treiber, aber den sollte man aber sowieso haben) startet das Spiel erst gar nicht, auch wenn man nur den noch vorhandenen OpenGL-Renderer nutzen möchte. In diesem Fall bleibt man doch besser beim Original. Aber dazu muss ich eigentlich nichts weiter schreiben, diese Version ist komplett unverändert – ich würde sie nur starten bzw. dazu umschalten, wenn man den direkten Vergleich sehen will.
Wichtiger ist natürlich der RTX genannte Renderer. Er basiert auf Vulkan, die globale Beleuchtung wird aber per Pathtracing berechnet, eine Variante von Raytracing. Man kann sich den Vorgang sogar genauer ansehen, drückt man die F5-F7-Tasten kann man einzelne Teile des Rendervorgangs abschalten, wie das Denoising – dann flimmert alles wie verrückt, diese Artefakte können aber beim Render mit Raytracing auftauchen und müssten in einem extra Schritt entfernt werden. Leider ist das noch nicht ganz perfekt, ich habe ein paar Stellen gefunden wo die Schatten trotz Filter flimmerten, es ist aber selten.
Der größte Effekt ist, dass die Beleuchtung deutlich realistischer und stimmiger wirkt. Hier fällt es deutlich stärker auf als in einem modernen Titel wie Metro: Exodus, den ich auch kurz getestet habe. Dessen Beleuchtungsmodell ist aber schon so fortschrittlich, dass der Unterschied zum Raytracing kaum auffällt. Da Quake 2 aus einer komplett andere Ära der Hardware stammt und entsprechend deutlich einfachere und weniger Ressourcenhungrige Methode zum Einsatz kommen, ist der Unterschied mit der Pathtracing-Variante deutlich zu sehen. Wie das Licht sich verhält kann man anhand der Tageszeit einstellen, das leuchtend helle Licht das Morgen, die grell-gelbe Mittagssonne oder die deutliche rotfärbung am Abend wirken sich deutlich auf die Atmosphäre aus. Nur von der Nacht würde ich abraten, die sieht zwar schick aus, weil Schüsse die Umgebung sehr stimmungsvoll erhellen, aber ohne dedizierte Lichtquellen oder einfache Methode wie Ambientes Licht sieht man teilweise rein gar nichts. Generell ändert sich in manchen Umgebungen die Lichtstimmung deutlich, vor allem im Vergleich zu Original. Selbst in komplett geschlossenen Räumen, wo das Licht der Sonne keine Rolle spielt und nur die dedizierten Lichtquellen die Umgebung erhellen, sieht es teils deutlich anders aus als ursprünglich. Ein wenig merkwürdig wird es in einem versteckten Level, dass auf einer Raumstation über Stroggos spielt: auch hier werden die Tageszeiten angewandt, was nicht unbedingt Sinn macht, aber wohl ohne größere Änderungen nicht anders geht.
Allgemein bin ich echt überrascht wie gut das Spiel damit aussieht, und dass obwohl die Assets größtenteils unverändert sind. Ein paar hat das Nvidia-eigenen Studio Lightspeed aber doch ersetzt, vor allem damit man mehr spiegelnde Oberflächen hat, wodurch die korrekt berechneten Reflexionen besser zu Geltung kommen: Als erste fällt die Glasfläche direkt nach dem Start auf: die wirkt nun nicht mehr nur wie ein Filtern, sondern das Licht dahinter wird realistisch gebrochen, allerdings kann man dann auch das Strogg-Logo kaum noch erkennen. Das selbe gilt für Wasser, die Levelarchitektur und sogar Waffen spiegeln sich darin, letzteres wirkt etwas komisch wenn man knapp unter der Oberfläche taucht, sollte aber korrekt sein. Dazu wurden auch ein paar der Waffemodelle modifiziert: die einfache Shotgun hat nun ein grünes Licht, der Hyperblaster eine goldene Spitze und die Railgun erkennt man gar nicht wieder, wobei ich mich da frage warum, das neue Modell hat nur eine kleine, spiegelten Oberfläche in der Mitte, die mir erst auf Screenshots aufgefallen sind. Schüsse und Explosionen erhellen die Umgebung realistisch und können in dunklen Ecken durchaus als Ersatz für eine Taschenlampe durchgehen, normalerweise ist das nicht nötig, sieht aber schick aus. Gerade der Blaster hat hier ein deutliches Update bekommen, davor konnte man sehen dass er nur in einem Kugelförmigen Bereich um den Schuss die Umgebung erhellt, jetzt geht es bis in die letzten Ecken des Raumes und beeinflusst die Schattenwürfe. Der Raketenwerfern erzeugt immernoch die kleinen Atompilz-Explosionen, was etwas merkwürdig aussieht, aber wohl zu Quake 2 dazu gehört. Bei den Umgebungen gibt es generell wenig neues, ein paar Texturen wurden ausgetauscht um Glanz- oder Spiegelungseffekte zu erzeugen, sie treten aber eher selten auf.
Ein wichtiger Faktor ist natürlich die Performance: Raytracing ist nun mal extrem langsam, trotz Forschung und Methoden, um das ganze zu Beschleunigen hat es außer ein paar Demos (vor allem von Intel im Hinblick auf das schon lange einstampfte Larrabee-Projekt) und natürlich in Filmen und Serien nie Anwendung gefunden. Bei letzteren ist es nicht tragisch wenn ein Frame nicht in Millisekunden berechnet wird, dafür ist der photorealistische Look deutlich wichtiger. Was in Spielen aktuell genutzt wird ist auch kein reines Raytracing, sondern eine Kombination mit der bekannten Rasterisierung: die übernimmt weiterhin einen Großteil der Arbeit, meistens werden nur einzelne Effekte wie Licht oder Spiegelungen durch Raytracing berechnet. Der Einfluss auf die Performance ist trotzdem drastisch, meine alte Karte war immerhin eine GTX 1080, welche die meisten modernen Spiele in 2560×1440 in 60 Bilder pro Sekunde darstellt. In Quake 2 RTX reicht es nur noch für knapp 30 bei gerade mal 1280×720 Pixel – das ist so wirklich nicht schön oder für mich spielbar, vor allem wenn der OpenGL Renderer fast 900 (!!!) FPS produzierte. Mit dem selben System (Ryzen 1700X, 32GB DDR4-3000 RAM) und einer RTX 2070 Super sieht die Sache schon anders aus: 60-70FPS bei 1920×1080 – das kann man spielen. Für die native Auflösung meines Monitors reicht es leider nicht, dann kann das Spiel die 60FPS nicht halten, mit weniger macht mir ein Shooter keinen Spaß. Beim Testen unterschiedlicher Auflösungen merkt man, dass Raytracing fast linear mit der Auflösung skaliert, die zu reduzieren hilft deshalb deutlich.
Fazit
Ich finde, Quake 2 RTX zeigt gut, zu was Raytracing fähig ist. Natürlich ist der Sprung enorm und dürfte deutlich größer sein als bei neueren Titeln, einfach weil der Unterschied zu dem sehr einfachen Beleuchtungsmodell zu der per Pathtracing berechneten Varianten so groß ausfällt. Ich finde es aber durchaus beeindruckend, wie viel diese vermeintlich kleine Änderung ausmacht, obwohl die Assets deutlich über 20 Jahre alt sind, kann sich das Spiel so durchaus sehen lassen.
Spielerisch darf man keine Neuerungen erwarten, es ist ein reiner Grafik-Port. Aber da man ihn für Lau bekommt kann sich wohl niemand beschweren, außer man hat keine RTX-Karte von Nvidia, auf anderen dürfte das schlicht keinen Spaß machen.