mirror of
https://github.com/nigels-com/glew.git
synced 2024-11-24 14:55:07 +00:00
Get GL extension strings via glGetStringi() if GL version is >= 3.0.
This commit is contained in:
parent
e935fcad83
commit
bac20de049
@ -1,23 +1,48 @@
|
||||
|
||||
/* query opengl extensions string */
|
||||
extStart = glGetString(GL_EXTENSIONS);
|
||||
if (extStart == 0)
|
||||
extStart = (const GLubyte*)"";
|
||||
extEnd = extStart + _glewStrLen(extStart);
|
||||
|
||||
while (extStart < extEnd)
|
||||
/* query opengl extensions string(s) */
|
||||
if(GLEW_VERSION_3_0)
|
||||
{
|
||||
GLuint len = _glewStrCLen(extStart, ' ');
|
||||
struct initflag *ptr = in_word_set(extStart, len);
|
||||
GLuint len;
|
||||
struct initflag *ptr;
|
||||
|
||||
if (ptr != NULL && ptr->flag != NULL) {
|
||||
glGetIntegerv(GL_NUM_EXTENSIONS, &numExts);
|
||||
for (ext = 0; ext < numExts; ext++)
|
||||
{
|
||||
extStart = glGetStringi(GL_EXTENSIONS, ext);
|
||||
len = _glewStrLen(extStart);
|
||||
ptr = in_word_set(extStart, len);
|
||||
|
||||
if (ptr != NULL && ptr->flag != NULL) {
|
||||
#ifdef GLEW_MX
|
||||
*(GLboolean *)((char *)ctx + (size_t)(ptr->flag)) = GL_TRUE;
|
||||
*(GLboolean *)((char *)ctx + (size_t)(ptr->flag)) = GL_TRUE;
|
||||
#else
|
||||
*ptr->flag = GL_TRUE;
|
||||
*ptr->flag = GL_TRUE;
|
||||
#endif
|
||||
}
|
||||
extStart += len + 1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
extStart = glGetString(GL_EXTENSIONS);
|
||||
if (extStart == 0)
|
||||
extStart = (const GLubyte*)"";
|
||||
extEnd = extStart + _glewStrLen(extStart);
|
||||
|
||||
while (extStart < extEnd)
|
||||
{
|
||||
GLuint len = _glewStrCLen(extStart, ' ');
|
||||
struct initflag *ptr = in_word_set(extStart, len);
|
||||
|
||||
if (ptr != NULL && ptr->flag != NULL) {
|
||||
#ifdef GLEW_MX
|
||||
*(GLboolean *)((char *)ctx + (size_t)(ptr->flag)) = GL_TRUE;
|
||||
#else
|
||||
*ptr->flag = GL_TRUE;
|
||||
#endif
|
||||
}
|
||||
extStart += len + 1;
|
||||
}
|
||||
extStart += len + 1;
|
||||
}
|
||||
|
||||
/* initialize extensions */
|
||||
|
Loading…
Reference in New Issue
Block a user