Improve GLSL ES version detection #18272
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This makes it so that in GLES2 contexts, GLSL versions higher than
100
will not be tried, because they are guaranteed to fail. Because of this change I was also able to enable the better XMB ribbon for GLES3 without also breaking GLES2. (dFdx
anddFdy
are enabled by theGL_OES_standard_derivatives
extension in GLES2, but are core in GLES3. Any shaders using them in GLES3 contexts must use at least#version 300 es
to compile though. I set the shaders that use those functions to use#version 130
, which maps to300 es
in GLES3 but works just fine as100
on GLES2 as well.)