Zusammenfassung:
AnyPS5, ein Open-Source-Projekt, das die direkte Ausführung von PlayStation 5-Spielen auf Windows- und Linux-Computern ermöglichen soll, hat in letzter Zeit wichtige Fortschritte gemacht. Die Projektentwickler haben Erkennungs- und Konvertierungsunterstützung für alle 1.166 derzeit verfolgten PS5-GPU-Shader-Anweisungen mit einer Abdeckungsrate von 100 % implementiert. Dies bedeutet, dass die technische Hürde für die Ausführung von PS5-Spielen auf normalen PCs um eins verringert wurde, es aber noch viele Herausforderungen bis zur groß angelegten Kompatibilität mit kommerziellen Spielen gibt.

Der technische Weg von AnyPS5 unterscheidet sich von dem herkömmlicher Spielemulatoren. Herkömmliche Emulatoren müssen in der Regel die Hardwareumgebung einer Spielekonsole simulieren, damit ursprünglich für die Konsole entwickelte Programme auf einer anderen Hardwareplattform ausgeführt werden können. Ziel von AnyPS5 ist es, die ausführbaren Dateien von PS5-Spielen in für Windows oder Linux geeignete Programme umzuverknüpfen und entsprechende Systembibliotheksimplementierungen bereitzustellen, damit die Spiele den Prozessor und die Grafikhardware des PCs möglichst direkt nutzen können.
PS5 verwendet den maßgeschneiderten Prozessor von AMD und die CPU basiert auf der x86-64-Architektur. Dies weist eine hohe Kompatibilität mit dem Prozessorbefehlssatz auf, der üblicherweise in modernen Windows- und Linux-Computern verwendet wird, und bietet Komfort für den technischen Weg von AnyPS5. Im Vergleich zu Lösungen, die die Simulation der gesamten Host-Hardware erfordern, dürfte dieser Ansatz einen gewissen zusätzlichen Overhead reduzieren.
Der gleiche CPU-Befehlssatz bedeutet jedoch nicht, dass PS5-Spiele direkt auf dem PC ausgeführt werden können. Das Spiel muss außerdem PlayStation-spezifische Systembibliotheken, Grafikschnittstellen und andere Plattformfunktionen aufrufen. AnyPS5 muss kompatible Implementierungen für diese Abhängigkeiten bereitstellen und gleichzeitig Probleme wie Systemaufrufe, Ressourcenverwaltung und Grafik-Rendering im Zusammenhang mit der Spielausführung bewältigen.
Die Konvertierung von GPU-Shader-Anweisungen ist eine der Schlüsselaufgaben. Shader in Spielen sind für die Abwicklung einer Vielzahl von Grafikberechnungsaufgaben verantwortlich, darunter Vertex-Verarbeitung, Pixel-Shading, Textur-Sampling und andere Vorgänge im Zusammenhang mit der Bildschirmgenerierung. PS5 verwendet die benutzerdefinierte GPU von AMD und sein Befehlssystem ist eng mit der Architektur der RDNA-Serie von AMD verbunden. Allerdings muss das vom Spiel verwendete Grafikprogramm noch entsprechend konvertiert werden, bevor es in der Zielgrafikumgebung von AnyPS5 ausgeführt werden kann.
AnyPS5 verwendet den Shader-Recompiler, um relevante GPU-Programme in das SPIR-V-Format zu konvertieren, um auf seinen Grafikverarbeitungsfluss zuzugreifen. SPIR-V ist eine Zwischendarstellung, die häufig bei der Kompilierung und Übertragung von Grafiken und Computerprogrammen verwendet wird. Es kann eine gewisse Kompatibilitätsbasis für die Grafikverarbeitung auf verschiedenen Hardwareplattformen bieten.
Der Kern des Fortschritts dieses Projekts besteht darin, dass die Entwickler die Erkennung und Unterstützung aller 1166 GPU-Shader-Anweisungen in der aktuellen Tracking-Liste abgeschlossen haben. Diese Anweisungen decken mehrere Kategorien ab, darunter Datenfreigabe, Speicherzugriff, Skalaroperationen und Vektoroperationen. Das Vervollständigen der gesamten Liste bedeutet, dass das Projekt keine nicht implementierten Einträge mehr zum Erkennen und Verarbeiten dieser bekannten Anweisungen enthält.
Aber hier gibt es einen sehr wichtigen Unterschied: 100 % Befehlsabdeckung bedeutet nicht, dass alle Anweisungen in jedem Spiel vollständig und genau ausgeführt wurden.
Die Art und Weise, wie das Projekt gezählt wird: Solange der Shader-Decoder die entsprechende Anweisung erkennen kann, kann es als implementiert gezählt werden. Daher bedeutet dieser Meilenstein hauptsächlich, dass das Projekt alle verfolgten Anweisungen erkennen kann, bedeutet jedoch nicht, dass alle komplexen Shader-Kombinationen, Grafikeffekte und Spielszenen getestet wurden.
Echte Spiele können eine Vielzahl von Befehlskombinationen verwenden und auf bestimmten Ausführungssequenzen, Speicherverhalten und Grafikverarbeitungsergebnissen basieren. Selbst wenn der Decoder jede Anweisung erkennen kann, kann es dennoch zu Problemen wie Grafikfehlern, Spielabstürzen oder abnormaler Leistung kommen, wenn das konvertierte Programm bei der Ausführung unterschiedliche Ergebnisse liefert.
Gleichzeitig hat AnyPS5 in Bezug auf die Systembibliotheken noch viel Arbeit vor sich. Die Implementierungsrate der derzeit vom Projekt verfolgten Systembibliotheksfunktionen beträgt etwa 84,76 %, was 2575 implementierten Funktionen und 3038 verfolgten Funktionen entspricht.
Auch dieser Indikator muss mit Vorsicht betrachtet werden. Die 3038 Funktionen repräsentieren nicht alle Funktionen im PS5-System, sondern die Teile des Projekts, die derzeit im Tracking-Umfang enthalten sind. Wenn Entwickler neue Systemfunktionen entdecken und hinzufügen, kann sich die statistische Summe noch erhöhen und daher wird sich die Implementierungsrate entsprechend ändern.
Der Grund, warum Systembibliotheken wichtig sind, liegt darin, dass PS5-Spiele nicht nur auf die GPU angewiesen sind, um die Bildschirmwiedergabe abzuschließen, sondern auch, dass das Betriebssystem Dateizugriff, Speicherverwaltung, Thread-Synchronisierung, Eingabeverarbeitung und andere grundlegende Dienste bereitstellt. Wenn das Spiel eine Funktion aufruft, die noch nicht implementiert wurde oder ein inkompatibles Verhalten aufweist, startet oder läuft das Spiel möglicherweise nicht ordnungsgemäß, selbst wenn der GPU-Shader konvertiert werden konnte.
Dies erklärt auch, warum eine 100 %ige Abdeckung der GPU-Anweisungen nicht bedeutet, dass 100 % der PS5-Spiele auf dem PC ausgeführt werden können. Shader sind nur eine von vielen Komponenten, auf die ein Spiel zum Ausführen angewiesen ist. Systembibliotheken, Grafikverhalten, Synchronisierungsmechanismen und andere Funktionen wirken sich auch auf die Kompatibilität aus.
Derzeit hat AnyPS5 einige tatsächliche Betriebsergebnisse gezeigt. Projektinformationen zeigen beispielsweise, dass das 2D-Plattformspiel „Dreaming Sarah“ auf einem Computer mit einer NVIDIA GeForce GTX 1050 Ti-Grafikkarte und einem Intel Core i5-7500-Prozessor mit stabilen 60 Frames laufen kann.
Dieser Fall zeigt, dass sich der technische Weg von AnyPS5 nicht mehr im theoretischen Stadium befindet und zumindest einige Spiele über entsprechende Tools in der PC-Umgebung ausgeführt werden können. Da es sich bei „Dreaming Sarah“ jedoch um ein relativ einfaches 2D-Plattformspiel handelt, lässt sich nicht schließen, dass auch komplexe 3D-Meisterwerke die gleiche Kompatibilität und Leistung erreichen können.
Bei PS5-Spielen mit komplexen Grafikeffekten und vielen Systemabhängigkeiten, wie z. B. „Gran Turismo 7“, ist es derzeit nicht möglich, allein anhand der Anweisungsabdeckung zu beurteilen, wann sie normal laufen. Große Spiele umfassen in der Regel komplexere Rendering-Prozesse, Ressourcenplanung und Plattformfunktionen, was es erforderlich machen kann, dass Entwickler Probleme von Fall zu Fall für bestimmte Spiele lösen.
Im Vergleich zu herkömmlichen Emulatoren sind die von AnyPS5 übernommenen Neuverknüpfungs- und Systembibliotheksalternativen einigermaßen attraktiv. Wenn wir die CPU- und GPU-Fähigkeiten des PCs voll ausnutzen und gleichzeitig einen Teil des Overheads der Simulation der gesamten Host-Hardware vermeiden können, können wir möglicherweise in Zukunft eine effizientere Möglichkeit bieten, einige Spiele auszuführen.
Aber dieser technische Weg hat auch seine eigenen Grenzen. Emulatoren versuchen normalerweise, eine relativ universelle Host-Betriebsumgebung einzurichten, während AnyPS5 die Implementierung der Systembibliothek kontinuierlich ergänzen und verbessern und sicherstellen muss, dass das konvertierte Programm mit der Zielplattform kompatibel ist. Verschiedene Spiele hängen unterschiedlich von den Systemfunktionen ab. Auch wenn sich der Gesamtfortschritt des Projekts weiter verbessert, kann die tatsächliche Kompatibilität immer noch erhebliche Unterschiede zwischen den Spielen aufweisen.
Außerdem sind Windows und Linux nicht genau die gleichen Betriebsumgebungen. AnyPS5 muss entsprechende ausführbare Dateien für verschiedene Betriebssysteme generieren und deren jeweilige Systemschnittstellen und Betriebsanforderungen bewältigen. Nur weil ein Spiel auf einer Plattform funktioniert, heißt das nicht unbedingt, dass es auch auf einer anderen funktioniert.
Dem Entwicklungsfortschritt nach zu urteilen, hat die GPU-Shader-Anweisungsabdeckungsrate 100 % erreicht, was eine wichtige schrittweise Errungenschaft des AnyPS5-Projekts darstellt. Dadurch wird eine eklatante Technologielücke in der aktuellen Tracklist geschlossen, sodass sich Entwickler stärker auf die Kompatibilität der Systembibliothek, die Genauigkeit der Grafikausführung und spezifische Probleme bei der Spielausführung konzentrieren können.
Das Projekt benötigt jedoch noch einen längeren Entwicklungs-, Test- und Optimierungszeitraum, bevor normale Spieler problemlos eine große Anzahl von PS5-Spielen auf dem PC ausführen können. Zusätzlich zum erfolgreichen Start des Spiels müssen Sie auch sicherstellen, dass die Grafik korrekt ist, die Eingabe normal ist, der Betrieb stabil ist und dass während des tatsächlichen Spiels eine angemessene Leistung aufrechterhalten werden kann.
Was daher in dieser Phase die größte Aufmerksamkeit verdient, ist nicht die 100-Prozent-Zahl selbst, sondern ob AnyPS5 die Liste der verifizierten Spiele schrittweise erweitern und es komplexeren Spielen ermöglichen kann, vom experimentellen Betrieb zur stabilen Spielbarkeit überzugehen. Da sich die Konvertierung von GPU-Befehlen und die Implementierung von Systembibliotheken weiter verbessern, lohnt es sich in der Tat, sich auf die Aussicht zu freuen, dass PS5-Spiele auf dem PC laufen. Allerdings kann dieser Fortschritt noch nicht so verstanden werden, dass die PS5-Spielebibliothek in großem Umfang PC-Kompatibilität erreicht hätte.
Kommentare