[Fix] (getter.cpp): Let GL_MAX_TEXTURE_IMAGE_UNITS of glGetIntegerv return a bigger value. Add GL_MAJOR_VERSION and GL_MINOR_VERSION process.

Signed-off-by: BZLZHH <admin@bzlzhh.top>
This commit is contained in:
BZLZHH 2025-03-01 13:53:03 +08:00
parent fbfa93d814
commit b20668c6ff

View File

@ -12,11 +12,11 @@
void glGetIntegerv(GLenum pname, GLint *params) { void glGetIntegerv(GLenum pname, GLint *params) {
LOG() LOG()
LOG_D("glGetIntegerv, pname: %s", glEnumToString(pname)) LOG_D("glGetIntegerv, pname: %s", glEnumToString(pname))
if (pname == GL_CONTEXT_PROFILE_MASK) { switch (pname) {
case GL_CONTEXT_PROFILE_MASK:
(*params) = GL_CONTEXT_CORE_PROFILE_BIT; (*params) = GL_CONTEXT_CORE_PROFILE_BIT;
return; break;
} case GL_NUM_EXTENSIONS:
if (pname == GL_NUM_EXTENSIONS) {
static GLint num_extensions = -1; static GLint num_extensions = -1;
if (num_extensions == -1) { if (num_extensions == -1) {
const GLubyte* ext_str = glGetString(GL_EXTENSIONS); const GLubyte* ext_str = glGetString(GL_EXTENSIONS);
@ -34,12 +34,27 @@ void glGetIntegerv(GLenum pname, GLint *params) {
} }
} }
(*params) = num_extensions; (*params) = num_extensions;
return; break;
case GL_MAJOR_VERSION:
(*params) = 4;
break;
case GL_MINOR_VERSION:
(*params) = 0;
break;
case GL_MAX_TEXTURE_IMAGE_UNITS: {
LOAD_GLES_FUNC(glGetIntegerv)
int es_params = 16;
gles_glGetIntegerv(pname, &es_params);
CHECK_GL_ERROR
(*params) = es_params * 2;
break;
} }
default:
LOAD_GLES_FUNC(glGetIntegerv) LOAD_GLES_FUNC(glGetIntegerv)
gles_glGetIntegerv(pname, params); gles_glGetIntegerv(pname, params);
LOG_D(" -> %d",*params) LOG_D(" -> %d",*params)
CHECK_GL_ERROR CHECK_GL_ERROR
}
} }
GLenum glGetError() { GLenum glGetError() {