-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SDL: really try lower GL profiles & add GLES context support #10423
Conversation
I tried leaving the attemptVersions array untouched, or adding {2, 0}, to the end - ppsspp would launch successfully, but the emulated content would not actually boot, staying on a black screen, but the menu works when pressing ESC. The Pi should only support ES 2.0 at maximum, and I suppose it makes sense not to try higher versions when building with -DUSING_GLES2... |
Hmm, Perhaps we should just let it autodetect as before for ES contexts, and put the entire core section in an -[Unknown] |
Ok, I tried changing the array to |
OK, I tried the following tests separately:
Change to this:
3: Isolating this whole part:
1 & 2 failed, but 3 works. Would you like me to update the PR to match no. 3 (with the fix to iterate correctly for lower versions for non-ES contexts), or should I just update the array to check the latest ES versions? |
8ddf742
to
8f6e46b
Compare
I won't be available to test for a few hours, so I've updated the PR to include the higher ES profile levels and amended the commit message. I wasn't completely clear on what you meant re the "entire core section", but this change (no. 3 that I was alluding to) also works:
It's simpler than adding the GLES context support, but if context creation fails for any reason, it will retry the exact same process 11 times unnecessarily. |
Oops, you're gonna need to rebase this - I moved PCMain.cpp to the SDL subdirectory and renamed it SDLMain.cpp. git should take care of the rename and reapplying your changes automatically though. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This approach looks good to me.
-[Unknown]
* When compiled with USING_GLES2, attempt to use only valid ES context versions. * Ensure that lower profiles are attempted correctly rather than prematurely returning from the function after the first failure. Needed for Raspberry Pi to successfully launch.
8f6e46b
to
d67d201
Compare
Rebased the commit & retested a build against latest master - still working OK. Thanks. |
Seems fine for now. Ideally at some point later we'll transition to not using #ifdef for the GL/GLES distinction. |
versions.
prematurely returning from the function after the first failure.
Needed for Raspberry Pi to successfully launch.