Skip to content

Commit 8cfd642

Browse files
Default shader version selection to GLSL300 for GLES3 (jMonkeyEngine#2819)
* better shader version selection for GLES * Update jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
1 parent 5d7ee66 commit 8cfd642

1 file changed

Lines changed: 13 additions & 3 deletions

File tree

jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1754,7 +1754,14 @@ public void updateShaderSourceData(ShaderSource source) {
17541754
if (language.startsWith("GLSL")) {
17551755
if (version > 100) {
17561756
stringBuf.append("#version ");
1757-
stringBuf.append(language.substring(4));
1757+
1758+
if (version >= 150 && version < 300 && gles3) {
1759+
// upgrade to 300, since it's the minimum version for GLES3.
1760+
version = 300;
1761+
}
1762+
1763+
stringBuf.append(version);
1764+
17581765
if (version >= 150) {
17591766
if(gles3) {
17601767
stringBuf.append(" es");
@@ -1763,12 +1770,15 @@ public void updateShaderSourceData(ShaderSource source) {
17631770
stringBuf.append(" core");
17641771
}
17651772
}
1773+
17661774
stringBuf.append("\n");
17671775
} else {
1768-
if (gles2 || gles3) {
1776+
if (gles3) {
1777+
// request GLSL ES (3.00) when compiling under GLES3.
1778+
stringBuf.append("#version 300 es\n");
1779+
} else if (gles2) {
17691780
// request GLSL ES (1.00) when compiling under GLES2.
17701781
stringBuf.append("#version 100\n");
1771-
17721782
} else {
17731783
// version 100 does not exist in desktop GLSL.
17741784
// put version 110 in that case to enable strict checking

0 commit comments

Comments
 (0)