Das legendĂ€re Star Fox gehört zu den technisch beeindruckendsten Spielen des Super Nintendo. Ein wesentlicher Bestandteil der damaligen Technik ist der Super-FX-Chip, der die 3D-Grafik des Spiels ermöglicht. Allerdings ist die Spiel-Engine eng an die Bildrate gekoppelt. Wird der Super-FX-Chip einfach ĂŒbertaktet, lĂ€uft dadurch nicht nur die Darstellung schneller â auch die Spielgeschwindigkeit steigt deutlich an.
Ein neuer Proof of Concept verfolgt deshalb einen interessanten anderen Ansatz: Star Fox soll mit bis zu 30 FPS dargestellt werden, ohne dass das eigentliche Gameplay entsprechend beschleunigt wird.
Von 20 auf 30 FPS
Die originale SNES-Version von Star Fox erreicht maximal rund 20 FPS. Durch vergleichsweise kleine Ănderungen an der Engine konnte die Framerate-Grenze zunĂ€chst auf 30 FPS angehoben werden.
AnschlieĂend wurde die Spiel-Logik so angepasst, dass sie nur mit einem entsprechenden Bruchteil der neuen Bildrate ausgefĂŒhrt wird.
Das Ergebnis ist eine deutlich flĂŒssigere Darstellung, wĂ€hrend sich die Geschwindigkeit des Spiels weiterhin möglichst nah am Original orientiert.
Damit unterscheidet sich dieser Ansatz deutlich von einem einfachen Super-FX-Overclock. Bei einer bloĂen Erhöhung der Super-FX-Geschwindigkeit wird auch die Spiel-Logik beschleunigt, wodurch Star Fox schnell unspielbar wird.
Grundlage ist UltraStarFox
Das Projekt basiert auf dem bereits bekannten UltraStarFox-Projekt auf GitHub.
FĂŒr den 30-FPS-Versuch wurden unter anderem die IRQ-Auslösungen angepasst, wodurch die ursprĂŒngliche Framerate-Grenze von 20 auf 30 FPS angehoben werden konnte.
ZusÀtzlich wurden grundlegende Anpassungen an den Geschwindigkeiten von Objekten und Kamera vorgenommen.
Das Ergebnis wurde mit Mesen-S innerhalb von RetroArch getestet. FĂŒr die Demonstration kam dabei ein sehr hoher Super-FX-Overclock zum Einsatz.
Noch nicht vollstÀndig spielbar
Bei aller beeindruckenden Technik handelt es sich momentan ausdrĂŒcklich nur um einen Proof of Concept.
Einige Objekte und Zwischensequenzen besitzen eigene Timing-Werte, die noch manuell angepasst werden mĂŒssen. Deshalb ist das Spiel in diesem Entwicklungsstand noch nicht vollstĂ€ndig durchspielbar.
Die grundlegende Technik funktioniert jedoch bereits und zeigt, dass eine flĂŒssigere 30-FPS-Darstellung grundsĂ€tzlich möglich ist, ohne das gesamte Gameplay entsprechend zu beschleunigen.
Interessante Erkenntnisse zur PAL-Version
Im Zuge der Arbeiten wurde auĂerdem eine interessante Eigenschaft der europĂ€ischen PAL-Version von Star Fox deutlich.
WÀhrend die NTSC-Version mit ungefÀhr 20 FPS arbeitet, erreicht die PAL-Version bereits 25 FPS.
Der Entwickler fĂŒhrt dies auf ein entsprechendes IRQ-Timing zurĂŒck, das auch fĂŒr den aktuellen 30-FPS-Ansatz relevant ist.
Diese Erkenntnis wurde bereits bei frĂŒheren Arbeiten am Spiel genutzt, unter anderem bei 30-/60-FPS-Patches.
Jahrzehntelanges Interesse an Star Fox
Hinter dem Projekt steckt zudem eine lange persönliche BeschĂ€ftigung mit der technischen Seite von Star Fox. Ăber die Jahre wurden unter anderem Informationen ĂŒber die Speicherposition des Framerate-ZĂ€hlers untersucht und dokumentiert.
Der aktuelle Ansatz geht nun einen Schritt weiter: Statt lediglich die Geschwindigkeit des Spiels zu erhöhen, wird versucht, Darstellung und Spiel-Logik voneinander zu entkoppeln.
Sollte es gelingen, sÀmtliche Objekt- und Sequenz-Timings anzupassen, könnte daraus ein vollstÀndiger 30-FPS-Patch entstehen.
Fazit
Der aktuelle Stand ist zwar noch nicht als fertiger Patch zu betrachten, technisch ist der Ansatz jedoch ausgesprochen interessant.
20 FPS â 30 FPS, ohne Star Fox einfach schneller laufen zu lassen â genau darin liegt der entscheidende Unterschied.
Sollte die noch notwendige Anpassung der Spiel-Logik erfolgreich abgeschlossen werden, könnte Star Fox auf dem SNES deutlich flĂŒssiger laufen und sich dabei trotzdem wesentlich nĂ€her am ursprĂŒnglichen Gameplay anfĂŒhlen als bei einem einfachen Super-FX-Overclock.
Ein spannender Proof of Concept â und möglicherweise der Beginn eines richtig interessanten 30-FPS-Patches fĂŒr einen SNES-Klassiker.
