RetroAchievements / RALibretro

RALibretro is a multi-emulator used to develop RetroAchievements.
https://retroachievements.org
GNU General Public License v3.0
177 stars 35 forks source link

Fix rendering issues with context management #367

Closed Jcw87 closed 1 year ago

Jcw87 commented 1 year ago

Some rendering issues can be caused by the OpenGL state changes made by the frontend. Using separate OpenGL contexts for the core and for the frontend prevents these kinds of issues.

Before: image After: image

More rendering issues are caused by leftover OpenGL state when switching games. Destroying and re-creating the OpenGL state on core shutdown resolves this.

Loading Metroid Prime, then Mario 64 Before: image After: image