Neuer PS1-Grafik-Renderer für Omega Red Emulator

Hallo an alle Leser!

Ich setze das Thema des Software-Emulators für PlayStation 1, PlayStation 2 und PlayStation Portable - Omega Red fort. Ausführlicher:


Ich habe diese Veröffentlichung im Zusammenhang mit dem Ersetzen des Software-Grafik-Renderers für die PlayStation 1 durch einen Grafik-Renderer mit DirectX11 geschrieben.

Willkommen bei Kat.


Der Artikel stellt das Ergebnis meiner Forschungen zur Verbesserung der Grafikkomponente des PlayStation 1-Emulators dar. Die vorherige Lösung wurde für die Software-Rasterung von Polygonen und Texturen implementiert und führte dazu, dass Polygon-Pixel-Artefakte auf einem Bildschirm mit einer höheren Auflösung als der ursprünglichen TV-Auflösung angezeigt wurden Texturen. Die naheliegende Lösung besteht darin, den Software-Renderer durch eine Hardware zu ersetzen, die eine genauere Rasterung in einer Vielzahl von Zielauflösungen ermöglicht. Ich habe die vorhandenen Hardware-Rasterisierungslösungen für PCSX nicht gefunden - sie verwenden den OpenGL-Treiber für das Grafik-Rendering, wodurch ein Kompatibilitätsproblem mit dem Basiscode des Omega Red-Emulators für WPF, DirectX9 und DirectX11 entsteht. Es gab nur eine Lösung - einen Grafik-Renderer mit DirectX11 zu schreiben, was ich auch getan habe.
Das Ergebnis war sehr erfolgreich:

Software-Renderer:



DirectX11-Renderer:



Software-Renderer:



DirectX11-Renderer:



Software-Renderer:



DirectX11-Renderer:



Eine Demonstration des Vergleichs der Unterschiede zwischen Renderern ist in der Demo zu sehen:





Derzeit ist das Programm unter: Omega Red verfügbar und wird auf GitHub: OmegaRed vorgestellt .

Source: https://habr.com/ru/post/de484620/


All Articles