From a0057adaaaa1a8071191d6135566e52100711420 Mon Sep 17 00:00:00 2001 From: Dmitry Shevchik Date: Sat, 16 Dec 2023 20:21:04 +0300 Subject: [PATCH] Support compute shaders for OpenGLES 3.1 by injecting a proper version. (#3224) --- src/renderer_gl.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/renderer_gl.cpp b/src/renderer_gl.cpp index 92c8235cd..4c6b9719b 100644 --- a/src/renderer_gl.cpp +++ b/src/renderer_gl.cpp @@ -6835,9 +6835,22 @@ namespace bgfx { namespace gl char* temp = (char*)alloca(tempLen); bx::StaticMemoryBlockWriter writer(temp, tempLen); + int32_t verLen = 0; + if (s_renderGL->m_gles3) + { + const char* str = "#version 310 es\n"; + verLen = bx::strLen(str); + bx::write(&writer, &err, str); + } + else + { + const char* str = "#version 430\n"; + verLen = bx::strLen(str); + bx::write(&writer, &err, str); + } + bx::write(&writer - , "#version 430\n" - "#define texture2DLod textureLod\n" + , "#define texture2DLod textureLod\n" "#define texture2DLodOffset textureLodOffset\n" "#define texture2DArrayLod textureLod\n" "#define texture2DArrayLodOffset textureLodOffset\n" @@ -6849,7 +6862,6 @@ namespace bgfx { namespace gl , &err ); - int32_t verLen = bx::strLen("#version 430\n"); bx::write(&writer, code.getPtr()+verLen, codeLen-verLen, &err); bx::write(&writer, '\0', &err);