Pull to refresh

Новый PS1 графический рендерер для эмулятора Omega Red

Reading time2 min
Views7.5K
Привет всем читателям!

Я продолжаю тему программного эмулятора для PlayStation 1, PlayStation 2 и PlayStation Portable — Omega Red. Более подробно:


Данную публикацию я написал в связи с заменой программного графического рендерера для PlayStation 1 на графический рендерер с DirectX11.

Добро пожаловать под «кат».


Статья представляет результат моего исследования в улучшении графической составляющей эмулятора PlayStation 1. Предыдущее решение было реализованно на программной растеризации полигонов и текстур, и как результат, при попытке отображения на экран с большим разрешением, чем оригинальное ТВ разрешение, на результирующем изображений возникали артефакты пикселизации полигонов и текстур. Очевидным решением является замена программного рендерера на аппаратный, способный на более точную растеризацию в широком диапазоне целевых разрешений. Существующие решения аппаратной растеризации для PCSX я нашёл не подходящими — они используют OpenGL драйвер для графического рендеринга, что создаёт проблему совместимости с базовым кодом эмулятора Omega Red на WPF, DirectX9 и DirectX11. Было лишь одно решение — написать графический рендерер с DirectX11, что я и сделал.
Результат получился весьма удачным:

Программный рендерер:



DirectX11 рендерер:



Программный рендерер:



DirectX11 рендерер:



Программный рендерер:



DirectX11 рендерер:



Демонстрацию сравнения разницы рендереров можно увидеть в демо:





В настоящий момент программа доступна по ссылке: Omega Red и представлена на GitHub: OmegaRed.
Only registered users can participate in poll. Log in, please.
Какие улучшения имеет смысл добавить для графического рендерера PS1?
47.83% Поддержку загрузки отдельных 4К текстур11
56.52% Поддержку трассировки лучей как в Battlefield V13
34.78% Поддержку управления камерой8
23 users voted. 11 users abstained.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
Total votes 3: ↑3 and ↓0+3
Comments10

Articles