OpenGL renderer support! Feedback wanted! #1267
Replies: 5 comments
-
Thanks for implementing opengl... I am having some rendering issues while upscaling. I checked with multiple games. Attaching the screenshot. |
Beta Was this translation helpful? Give feedback.
-
Just submitted this issue here it seems to continuously draw this mess overtop of models and you can sometimes see the model underneath. |
Beta Was this translation helpful? Give feedback.
-
@rafaelvcaetano if you have a discord server or such i would be glad to contact you and do thorough testing. |
Beta Was this translation helpful? Give feedback.
-
It is awesome... Keep going the great job that you are doing with this emulator, some games have graphical issues but I trust they will be fixed through the time, thanks for doing melonds on Android step up to the next level 🥳 |
Beta Was this translation helpful? Give feedback.
-
I was going to open an issue regarding OpenGL acceleration but it might better fit here. Maybe this project could benefit from using libadrenotools to allow loading external drivers like the open source mesa freedreno driver. I have seen a few emulators (like citra or yuzu) do it to fix broken driver bugs, which might be interesting considering how bad android GLES drivers can be. |
Beta Was this translation helpful? Give feedback.
-
The OpenGL renderer has finally been introduced and, with it, comes the most requested feature since melonDS for Android began its development: internal resolution scaling or high resolution rendering. This allows the emulator to render the content using a resolution higher than the Nintendo DS's measly 256x192 resolution (per screen), which will give much more detail to 3D objects and scenes. To enable it, go to the Video settings and select the OpenGL renderer. If you can't see this option, it means that your device does not support OpenGL ES 3.2, which is required. You can scale the internal resolution up to 8 times, but I really doubt your device will handle it properly.
Here you can see a comparison between the software renderer and the OpenGL renderer running at 3x scaling:
Performance
At 1x scaling, the performance is extremely similar to the software renderer. As you increase the resolution scaling, performance slightly goes down. To use use the highest scaling levels with acceptable performance, you will probably need a current gen flagship. But I don't have one, so I couldn't really test.
The current implementation is, above all, used as a proof that the renderer can run on Android. Some shortcuts were taken, which means that performance can still be slightly improved.
Rendering issues
Just like in the PC version of melonDS, the OpenGL renderer is less accurate that the software one. As such, you are bound to find some visual artefacts or issues in some games. If you find such an issue, please take a look at melonDS's OpenGL issues to check if the PC version is affected by it as well. If it can't be reproduced on the PC version, feel free to open tickets so that I can take a look at them.
How to test
Download the latest nightly build, enable the OpenGL render in the Video settings, and you are good to go! Don't forget to leave your feedback in this discussion!
Beta Was this translation helpful? Give feedback.
All reactions