mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-12 14:18:31 +09:00
[Improvement] (GL_getter.cpp): Make glGetStringi standard.
This commit is contained in:
@@ -64,6 +64,8 @@ namespace MG_GL::GL {
|
|||||||
|
|
||||||
const GLubyte* GetStringi(GLenum name, GLuint index) {
|
const GLubyte* GetStringi(GLenum name, GLuint index) {
|
||||||
MG_Util::Debug::LogD("glGetStringi, name: %s, index: %d", MG_Util::Debug::GLEnumToString(name), index);
|
MG_Util::Debug::LogD("glGetStringi, name: %s, index: %d", MG_Util::Debug::GLEnumToString(name), index);
|
||||||
|
if (name != GL_EXTENSIONS)
|
||||||
|
return (const GLubyte*)"";
|
||||||
typedef struct {
|
typedef struct {
|
||||||
GLenum name;
|
GLenum name;
|
||||||
const char** parts;
|
const char** parts;
|
||||||
@@ -81,27 +83,7 @@ namespace MG_GL::GL {
|
|||||||
GLenum target = cache.name;
|
GLenum target = cache.name;
|
||||||
const GLubyte* str = nullptr;
|
const GLubyte* str = nullptr;
|
||||||
const char* delimiter = " ";
|
const char* delimiter = " ";
|
||||||
|
str = GetString(GL_EXTENSIONS);
|
||||||
switch (target) {
|
|
||||||
case GL_VENDOR:
|
|
||||||
str = (const GLubyte*)"MobileGL-Dev";
|
|
||||||
delimiter = ", ";
|
|
||||||
break;
|
|
||||||
case GL_VERSION:
|
|
||||||
str = (const GLubyte*)"3.0.0 MobileGL";
|
|
||||||
delimiter = " .";
|
|
||||||
break;
|
|
||||||
case GL_SHADING_LANGUAGE_VERSION:
|
|
||||||
str = (const GLubyte*)"4.50 MobileGL glslang";
|
|
||||||
break;
|
|
||||||
case GL_EXTENSIONS:
|
|
||||||
str = GetString(GL_EXTENSIONS);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return (const GLubyte *) "Unknown enum";
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!str) continue;
|
|
||||||
|
|
||||||
char* copy = strdup((const char*)str);
|
char* copy = strdup((const char*)str);
|
||||||
char* token = strtok(copy, delimiter);
|
char* token = strtok(copy, delimiter);
|
||||||
|
|||||||
Reference in New Issue
Block a user