diff --git a/src/MagnumExternal/OpenGL/GLES2/extensions.txt b/src/MagnumExternal/OpenGL/GLES2/extensions.txt index 81b986dcb..9c290dfcd 100644 --- a/src/MagnumExternal/OpenGL/GLES2/extensions.txt +++ b/src/MagnumExternal/OpenGL/GLES2/extensions.txt @@ -90,3 +90,39 @@ extension OES_mapbuffer optional extension OES_stencil1 optional extension OES_stencil4 optional extension OES_texture_stencil8 optional + +begin functions blacklist + # These are listed in EXT_separate_shader_objects with only the comment + # saying "Depends on OpenGL ES 3.0 or GL_NV_non_square_matrices". No way to + # parse that so I have to disable them manually. iOS extension header + # doesn't provide these for GLES2. + ProgramUniform1uiEXT + ProgramUniform2uiEXT + ProgramUniform3uiEXT + ProgramUniform4uiEXT + ProgramUniform1uivEXT + ProgramUniform2uivEXT + ProgramUniform3uivEXT + ProgramUniform4uivEXT + ProgramUniformMatrix2x3fvEXT + ProgramUniformMatrix3x2fvEXT + ProgramUniformMatrix2x4fvEXT + ProgramUniformMatrix4x2fvEXT + ProgramUniformMatrix3x4fvEXT + ProgramUniformMatrix4x3fvEXT + + # These are listed in EXT_texture_storage with a comment saying "Not clear + # all of these enums should be here for OpenGL ES. Many are only defined if + # other extensions also requiring them are supported". iOS extension header + # doesn't provide this one and TexStorage3DEXT, however I need the 3D for + # OES_texture_3D so I'm having an ugly workaround in flextGLPlatformIOS.cpp. + TexStorage1DEXT + + # These are listed in EXT_texture_storage with a comment saying "Supported + # only if GL_EXT_direct_state_access is supported". Again impossible to + # parse so I have to disable them manually. iOS extension header doesn't + # provide these for GLES2. + TextureStorage1DEXT + TextureStorage2DEXT + TextureStorage3DEXT +end functions blacklist diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGL.cpp b/src/MagnumExternal/OpenGL/GLES2/flextGL.cpp index de1caad84..a0d0f33d8 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGL.cpp +++ b/src/MagnumExternal/OpenGL/GLES2/flextGL.cpp @@ -96,35 +96,21 @@ FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1fEXT)(GLuint, GLint, GLfloat FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1iEXT)(GLuint, GLint, GLint) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1ivEXT)(GLuint, GLint, GLsizei, const GLint *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1uiEXT)(GLuint, GLint, GLuint) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2fEXT)(GLuint, GLint, GLfloat, GLfloat) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2iEXT)(GLuint, GLint, GLint, GLint) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2ivEXT)(GLuint, GLint, GLsizei, const GLint *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2uiEXT)(GLuint, GLint, GLuint, GLuint) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3iEXT)(GLuint, GLint, GLint, GLint, GLint) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3ivEXT)(GLuint, GLint, GLsizei, const GLint *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4iEXT)(GLuint, GLint, GLint, GLint, GLint, GLint) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4ivEXT)(GLuint, GLint, GLsizei, const GLint *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglUseProgramStagesEXT)(GLuint, GLbitfield, GLuint) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglValidateProgramPipelineEXT)(GLuint) = nullptr; @@ -139,12 +125,8 @@ FLEXTGL_EXPORT void(APIENTRY *flextglTexParameterIivEXT)(GLenum, GLenum, const G FLEXTGL_EXPORT void(APIENTRY *flextglTexParameterIuivEXT)(GLenum, GLenum, const GLuint *) = nullptr; /* GL_EXT_texture_storage */ -FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage1DEXT)(GLenum, GLsizei, GLenum, GLsizei) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage2DEXT)(GLenum, GLsizei, GLenum, GLsizei, GLsizei) = nullptr; FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage3DEXT)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage1DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage2DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei) = nullptr; -FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage3DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) = nullptr; /* GL_KHR_blend_equation_advanced */ FLEXTGL_EXPORT void(APIENTRY *flextglBlendBarrierKHR)(void) = nullptr; diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGL.h b/src/MagnumExternal/OpenGL/GLES2/flextGL.h index 606c85332..aaefc5153 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGL.h +++ b/src/MagnumExternal/OpenGL/GLES2/flextGL.h @@ -1347,10 +1347,6 @@ GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1iEXT)(GLuint, GLint, G #define glProgramUniform1iEXT flextglProgramUniform1iEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1ivEXT)(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform1ivEXT flextglProgramUniform1ivEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1uiEXT)(GLuint, GLint, GLuint); -#define glProgramUniform1uiEXT flextglProgramUniform1uiEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform1uivEXT)(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform1uivEXT flextglProgramUniform1uivEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2fEXT)(GLuint, GLint, GLfloat, GLfloat); #define glProgramUniform2fEXT flextglProgramUniform2fEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2fvEXT)(GLuint, GLint, GLsizei, const GLfloat *); @@ -1359,10 +1355,6 @@ GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2iEXT)(GLuint, GLint, G #define glProgramUniform2iEXT flextglProgramUniform2iEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2ivEXT)(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform2ivEXT flextglProgramUniform2ivEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2uiEXT)(GLuint, GLint, GLuint, GLuint); -#define glProgramUniform2uiEXT flextglProgramUniform2uiEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform2uivEXT)(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform2uivEXT flextglProgramUniform2uivEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat); #define glProgramUniform3fEXT flextglProgramUniform3fEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3fvEXT)(GLuint, GLint, GLsizei, const GLfloat *); @@ -1371,10 +1363,6 @@ GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3iEXT)(GLuint, GLint, G #define glProgramUniform3iEXT flextglProgramUniform3iEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3ivEXT)(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform3ivEXT flextglProgramUniform3ivEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint); -#define glProgramUniform3uiEXT flextglProgramUniform3uiEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform3uivEXT)(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform3uivEXT flextglProgramUniform3uivEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat); #define glProgramUniform4fEXT flextglProgramUniform4fEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4fvEXT)(GLuint, GLint, GLsizei, const GLfloat *); @@ -1383,28 +1371,12 @@ GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4iEXT)(GLuint, GLint, G #define glProgramUniform4iEXT flextglProgramUniform4iEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4ivEXT)(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform4ivEXT flextglProgramUniform4ivEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint); -#define glProgramUniform4uiEXT flextglProgramUniform4uiEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniform4uivEXT)(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform4uivEXT flextglProgramUniform4uivEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix2fvEXT flextglProgramUniformMatrix2fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix2x3fvEXT flextglProgramUniformMatrix2x3fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix2x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix2x4fvEXT flextglProgramUniformMatrix2x4fvEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix3fvEXT flextglProgramUniformMatrix3fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix3x2fvEXT flextglProgramUniformMatrix3x2fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix3x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix3x4fvEXT flextglProgramUniformMatrix3x4fvEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix4fvEXT flextglProgramUniformMatrix4fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix4x2fvEXT flextglProgramUniformMatrix4x2fvEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglProgramUniformMatrix4x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix4x3fvEXT flextglProgramUniformMatrix4x3fvEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglUseProgramStagesEXT)(GLuint, GLbitfield, GLuint); #define glUseProgramStagesEXT flextglUseProgramStagesEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglValidateProgramPipelineEXT)(GLuint); @@ -1431,18 +1403,10 @@ GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTexParameterIuivEXT)(GLenum, GLenum, /* GL_EXT_texture_storage */ -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage1DEXT)(GLenum, GLsizei, GLenum, GLsizei); -#define glTexStorage1DEXT flextglTexStorage1DEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage2DEXT)(GLenum, GLsizei, GLenum, GLsizei, GLsizei); #define glTexStorage2DEXT flextglTexStorage2DEXT GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTexStorage3DEXT)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei); #define glTexStorage3DEXT flextglTexStorage3DEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage1DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei); -#define glTextureStorage1DEXT flextglTextureStorage1DEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage2DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei); -#define glTextureStorage2DEXT flextglTextureStorage2DEXT -GLAPI FLEXTGL_EXPORT void(APIENTRY *flextglTextureStorage3DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei); -#define glTextureStorage3DEXT flextglTextureStorage3DEXT /* GL_KHR_blend_equation_advanced */ diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGLNaCl.h b/src/MagnumExternal/OpenGL/GLES2/flextGLNaCl.h index 6f447311a..abae35d93 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGLNaCl.h +++ b/src/MagnumExternal/OpenGL/GLES2/flextGLNaCl.h @@ -1554,10 +1554,6 @@ GL_APICALL void GL_APIENTRY GLES2ProgramUniform1iEXT(GLuint, GLint, GLint); #define glProgramUniform1iEXT GLES2ProgramUniform1iEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform1ivEXT(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform1ivEXT GLES2ProgramUniform1ivEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform1uiEXT(GLuint, GLint, GLuint); -#define glProgramUniform1uiEXT GLES2ProgramUniform1uiEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform1uivEXT(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform1uivEXT GLES2ProgramUniform1uivEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform2fEXT(GLuint, GLint, GLfloat, GLfloat); #define glProgramUniform2fEXT GLES2ProgramUniform2fEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform2fvEXT(GLuint, GLint, GLsizei, const GLfloat *); @@ -1566,10 +1562,6 @@ GL_APICALL void GL_APIENTRY GLES2ProgramUniform2iEXT(GLuint, GLint, GLint, GLint #define glProgramUniform2iEXT GLES2ProgramUniform2iEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform2ivEXT(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform2ivEXT GLES2ProgramUniform2ivEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform2uiEXT(GLuint, GLint, GLuint, GLuint); -#define glProgramUniform2uiEXT GLES2ProgramUniform2uiEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform2uivEXT(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform2uivEXT GLES2ProgramUniform2uivEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform3fEXT(GLuint, GLint, GLfloat, GLfloat, GLfloat); #define glProgramUniform3fEXT GLES2ProgramUniform3fEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform3fvEXT(GLuint, GLint, GLsizei, const GLfloat *); @@ -1578,10 +1570,6 @@ GL_APICALL void GL_APIENTRY GLES2ProgramUniform3iEXT(GLuint, GLint, GLint, GLint #define glProgramUniform3iEXT GLES2ProgramUniform3iEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform3ivEXT(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform3ivEXT GLES2ProgramUniform3ivEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform3uiEXT(GLuint, GLint, GLuint, GLuint, GLuint); -#define glProgramUniform3uiEXT GLES2ProgramUniform3uiEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform3uivEXT(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform3uivEXT GLES2ProgramUniform3uivEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform4fEXT(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat); #define glProgramUniform4fEXT GLES2ProgramUniform4fEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform4fvEXT(GLuint, GLint, GLsizei, const GLfloat *); @@ -1590,28 +1578,12 @@ GL_APICALL void GL_APIENTRY GLES2ProgramUniform4iEXT(GLuint, GLint, GLint, GLint #define glProgramUniform4iEXT GLES2ProgramUniform4iEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniform4ivEXT(GLuint, GLint, GLsizei, const GLint *); #define glProgramUniform4ivEXT GLES2ProgramUniform4ivEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform4uiEXT(GLuint, GLint, GLuint, GLuint, GLuint, GLuint); -#define glProgramUniform4uiEXT GLES2ProgramUniform4uiEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniform4uivEXT(GLuint, GLint, GLsizei, const GLuint *); -#define glProgramUniform4uivEXT GLES2ProgramUniform4uivEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix2fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix2fvEXT GLES2ProgramUniformMatrix2fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix2x3fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix2x3fvEXT GLES2ProgramUniformMatrix2x3fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix2x4fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix2x4fvEXT GLES2ProgramUniformMatrix2x4fvEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix3fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix3fvEXT GLES2ProgramUniformMatrix3fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix3x2fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix3x2fvEXT GLES2ProgramUniformMatrix3x2fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix3x4fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix3x4fvEXT GLES2ProgramUniformMatrix3x4fvEXT GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix4fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); #define glProgramUniformMatrix4fvEXT GLES2ProgramUniformMatrix4fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix4x2fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix4x2fvEXT GLES2ProgramUniformMatrix4x2fvEXT -GL_APICALL void GL_APIENTRY GLES2ProgramUniformMatrix4x3fvEXT(GLuint, GLint, GLsizei, GLboolean, const GLfloat *); -#define glProgramUniformMatrix4x3fvEXT GLES2ProgramUniformMatrix4x3fvEXT GL_APICALL void GL_APIENTRY GLES2UseProgramStagesEXT(GLuint, GLbitfield, GLuint); #define glUseProgramStagesEXT GLES2UseProgramStagesEXT GL_APICALL void GL_APIENTRY GLES2ValidateProgramPipelineEXT(GLuint); @@ -1682,8 +1654,6 @@ GL_APICALL void GL_APIENTRY GLES2TexParameterIuivEXT(GLenum, GLenum, const GLuin /* GL_EXT_texture_storage */ #ifndef GL_EXT_texture_storage #define GL_EXT_texture_storage 1 -GL_APICALL void GL_APIENTRY GLES2TexStorage1DEXT(GLenum, GLsizei, GLenum, GLsizei); -#define glTexStorage1DEXT GLES2TexStorage1DEXT GL_APICALL void GL_APIENTRY GLES2TexStorage2DEXT(GLenum, GLsizei, GLenum, GLsizei, GLsizei); #define glTexStorage2DEXT GLES2TexStorage2DEXT GL_APICALL void GL_APIENTRY GLES2TexStorage3DEXT(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei); diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatform.cpp b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatform.cpp index d7df7679f..0bc5c6371 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatform.cpp +++ b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatform.cpp @@ -100,35 +100,21 @@ void flextGLInit() { flextglProgramUniform1fvEXT = reinterpret_cast(loader.load("glProgramUniform1fvEXT")); flextglProgramUniform1iEXT = reinterpret_cast(loader.load("glProgramUniform1iEXT")); flextglProgramUniform1ivEXT = reinterpret_cast(loader.load("glProgramUniform1ivEXT")); - flextglProgramUniform1uiEXT = reinterpret_cast(loader.load("glProgramUniform1uiEXT")); - flextglProgramUniform1uivEXT = reinterpret_cast(loader.load("glProgramUniform1uivEXT")); flextglProgramUniform2fEXT = reinterpret_cast(loader.load("glProgramUniform2fEXT")); flextglProgramUniform2fvEXT = reinterpret_cast(loader.load("glProgramUniform2fvEXT")); flextglProgramUniform2iEXT = reinterpret_cast(loader.load("glProgramUniform2iEXT")); flextglProgramUniform2ivEXT = reinterpret_cast(loader.load("glProgramUniform2ivEXT")); - flextglProgramUniform2uiEXT = reinterpret_cast(loader.load("glProgramUniform2uiEXT")); - flextglProgramUniform2uivEXT = reinterpret_cast(loader.load("glProgramUniform2uivEXT")); flextglProgramUniform3fEXT = reinterpret_cast(loader.load("glProgramUniform3fEXT")); flextglProgramUniform3fvEXT = reinterpret_cast(loader.load("glProgramUniform3fvEXT")); flextglProgramUniform3iEXT = reinterpret_cast(loader.load("glProgramUniform3iEXT")); flextglProgramUniform3ivEXT = reinterpret_cast(loader.load("glProgramUniform3ivEXT")); - flextglProgramUniform3uiEXT = reinterpret_cast(loader.load("glProgramUniform3uiEXT")); - flextglProgramUniform3uivEXT = reinterpret_cast(loader.load("glProgramUniform3uivEXT")); flextglProgramUniform4fEXT = reinterpret_cast(loader.load("glProgramUniform4fEXT")); flextglProgramUniform4fvEXT = reinterpret_cast(loader.load("glProgramUniform4fvEXT")); flextglProgramUniform4iEXT = reinterpret_cast(loader.load("glProgramUniform4iEXT")); flextglProgramUniform4ivEXT = reinterpret_cast(loader.load("glProgramUniform4ivEXT")); - flextglProgramUniform4uiEXT = reinterpret_cast(loader.load("glProgramUniform4uiEXT")); - flextglProgramUniform4uivEXT = reinterpret_cast(loader.load("glProgramUniform4uivEXT")); flextglProgramUniformMatrix2fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix2fvEXT")); - flextglProgramUniformMatrix2x3fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix2x3fvEXT")); - flextglProgramUniformMatrix2x4fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix2x4fvEXT")); flextglProgramUniformMatrix3fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix3fvEXT")); - flextglProgramUniformMatrix3x2fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix3x2fvEXT")); - flextglProgramUniformMatrix3x4fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix3x4fvEXT")); flextglProgramUniformMatrix4fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix4fvEXT")); - flextglProgramUniformMatrix4x2fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix4x2fvEXT")); - flextglProgramUniformMatrix4x3fvEXT = reinterpret_cast(loader.load("glProgramUniformMatrix4x3fvEXT")); flextglUseProgramStagesEXT = reinterpret_cast(loader.load("glUseProgramStagesEXT")); flextglValidateProgramPipelineEXT = reinterpret_cast(loader.load("glValidateProgramPipelineEXT")); @@ -143,12 +129,8 @@ void flextGLInit() { flextglTexParameterIuivEXT = reinterpret_cast(loader.load("glTexParameterIuivEXT")); /* GL_EXT_texture_storage */ - flextglTexStorage1DEXT = reinterpret_cast(loader.load("glTexStorage1DEXT")); flextglTexStorage2DEXT = reinterpret_cast(loader.load("glTexStorage2DEXT")); flextglTexStorage3DEXT = reinterpret_cast(loader.load("glTexStorage3DEXT")); - flextglTextureStorage1DEXT = reinterpret_cast(loader.load("glTextureStorage1DEXT")); - flextglTextureStorage2DEXT = reinterpret_cast(loader.load("glTextureStorage2DEXT")); - flextglTextureStorage3DEXT = reinterpret_cast(loader.load("glTextureStorage3DEXT")); /* GL_KHR_blend_equation_advanced */ flextglBlendBarrierKHR = reinterpret_cast(loader.load("glBlendBarrierKHR")); diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp index d94dd06d4..1c99e7def 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp +++ b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp @@ -59,35 +59,21 @@ #undef glProgramUniform1fvEXT #undef glProgramUniform1iEXT #undef glProgramUniform1ivEXT -#undef glProgramUniform1uiEXT -#undef glProgramUniform1uivEXT #undef glProgramUniform2fEXT #undef glProgramUniform2fvEXT #undef glProgramUniform2iEXT #undef glProgramUniform2ivEXT -#undef glProgramUniform2uiEXT -#undef glProgramUniform2uivEXT #undef glProgramUniform3fEXT #undef glProgramUniform3fvEXT #undef glProgramUniform3iEXT #undef glProgramUniform3ivEXT -#undef glProgramUniform3uiEXT -#undef glProgramUniform3uivEXT #undef glProgramUniform4fEXT #undef glProgramUniform4fvEXT #undef glProgramUniform4iEXT #undef glProgramUniform4ivEXT -#undef glProgramUniform4uiEXT -#undef glProgramUniform4uivEXT #undef glProgramUniformMatrix2fvEXT -#undef glProgramUniformMatrix2x3fvEXT -#undef glProgramUniformMatrix2x4fvEXT #undef glProgramUniformMatrix3fvEXT -#undef glProgramUniformMatrix3x2fvEXT -#undef glProgramUniformMatrix3x4fvEXT #undef glProgramUniformMatrix4fvEXT -#undef glProgramUniformMatrix4x2fvEXT -#undef glProgramUniformMatrix4x3fvEXT #undef glUseProgramStagesEXT #undef glValidateProgramPipelineEXT #undef glGetSamplerParameterIivEXT @@ -98,12 +84,8 @@ #undef glSamplerParameterIuivEXT #undef glTexParameterIivEXT #undef glTexParameterIuivEXT -#undef glTexStorage1DEXT #undef glTexStorage2DEXT #undef glTexStorage3DEXT -#undef glTextureStorage1DEXT -#undef glTextureStorage2DEXT -#undef glTextureStorage3DEXT #undef glBlendBarrierKHR #undef glDebugMessageCallbackKHR #undef glDebugMessageControlKHR @@ -146,6 +128,9 @@ #include void flextGLInit() { + /* Work around missing glTexStorage3D (can't be used anyway because GLES2 + on iOS doesn't support OES_texture_3D) */ + constexpr void(*glTexStorage3DEXT)() = nullptr; /* GL_ANGLE_framebuffer_blit */ #if GL_ANGLE_framebuffer_blit @@ -272,35 +257,21 @@ void flextGLInit() { flextglProgramUniform1fvEXT = reinterpret_cast(glProgramUniform1fvEXT); flextglProgramUniform1iEXT = reinterpret_cast(glProgramUniform1iEXT); flextglProgramUniform1ivEXT = reinterpret_cast(glProgramUniform1ivEXT); - flextglProgramUniform1uiEXT = reinterpret_cast(glProgramUniform1uiEXT); - flextglProgramUniform1uivEXT = reinterpret_cast(glProgramUniform1uivEXT); flextglProgramUniform2fEXT = reinterpret_cast(glProgramUniform2fEXT); flextglProgramUniform2fvEXT = reinterpret_cast(glProgramUniform2fvEXT); flextglProgramUniform2iEXT = reinterpret_cast(glProgramUniform2iEXT); flextglProgramUniform2ivEXT = reinterpret_cast(glProgramUniform2ivEXT); - flextglProgramUniform2uiEXT = reinterpret_cast(glProgramUniform2uiEXT); - flextglProgramUniform2uivEXT = reinterpret_cast(glProgramUniform2uivEXT); flextglProgramUniform3fEXT = reinterpret_cast(glProgramUniform3fEXT); flextglProgramUniform3fvEXT = reinterpret_cast(glProgramUniform3fvEXT); flextglProgramUniform3iEXT = reinterpret_cast(glProgramUniform3iEXT); flextglProgramUniform3ivEXT = reinterpret_cast(glProgramUniform3ivEXT); - flextglProgramUniform3uiEXT = reinterpret_cast(glProgramUniform3uiEXT); - flextglProgramUniform3uivEXT = reinterpret_cast(glProgramUniform3uivEXT); flextglProgramUniform4fEXT = reinterpret_cast(glProgramUniform4fEXT); flextglProgramUniform4fvEXT = reinterpret_cast(glProgramUniform4fvEXT); flextglProgramUniform4iEXT = reinterpret_cast(glProgramUniform4iEXT); flextglProgramUniform4ivEXT = reinterpret_cast(glProgramUniform4ivEXT); - flextglProgramUniform4uiEXT = reinterpret_cast(glProgramUniform4uiEXT); - flextglProgramUniform4uivEXT = reinterpret_cast(glProgramUniform4uivEXT); flextglProgramUniformMatrix2fvEXT = reinterpret_cast(glProgramUniformMatrix2fvEXT); - flextglProgramUniformMatrix2x3fvEXT = reinterpret_cast(glProgramUniformMatrix2x3fvEXT); - flextglProgramUniformMatrix2x4fvEXT = reinterpret_cast(glProgramUniformMatrix2x4fvEXT); flextglProgramUniformMatrix3fvEXT = reinterpret_cast(glProgramUniformMatrix3fvEXT); - flextglProgramUniformMatrix3x2fvEXT = reinterpret_cast(glProgramUniformMatrix3x2fvEXT); - flextglProgramUniformMatrix3x4fvEXT = reinterpret_cast(glProgramUniformMatrix3x4fvEXT); flextglProgramUniformMatrix4fvEXT = reinterpret_cast(glProgramUniformMatrix4fvEXT); - flextglProgramUniformMatrix4x2fvEXT = reinterpret_cast(glProgramUniformMatrix4x2fvEXT); - flextglProgramUniformMatrix4x3fvEXT = reinterpret_cast(glProgramUniformMatrix4x3fvEXT); flextglUseProgramStagesEXT = reinterpret_cast(glUseProgramStagesEXT); flextglValidateProgramPipelineEXT = reinterpret_cast(glValidateProgramPipelineEXT); #endif @@ -319,12 +290,8 @@ void flextGLInit() { /* GL_EXT_texture_storage */ #if GL_EXT_texture_storage - flextglTexStorage1DEXT = reinterpret_cast(glTexStorage1DEXT); flextglTexStorage2DEXT = reinterpret_cast(glTexStorage2DEXT); flextglTexStorage3DEXT = reinterpret_cast(glTexStorage3DEXT); - flextglTextureStorage1DEXT = reinterpret_cast(glTextureStorage1DEXT); - flextglTextureStorage2DEXT = reinterpret_cast(glTextureStorage2DEXT); - flextglTextureStorage3DEXT = reinterpret_cast(glTextureStorage3DEXT); #endif /* GL_KHR_blend_equation_advanced */ diff --git a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp.template b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp.template index 2d5982016..a038a4f0a 100644 --- a/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp.template +++ b/src/MagnumExternal/OpenGL/GLES2/flextGLPlatformIOS.cpp.template @@ -12,6 +12,9 @@ #include void flextGLInit() { + /* Work around missing glTexStorage3D (can't be used anyway because GLES2 + on iOS doesn't support OES_texture_3D) */ + constexpr void(*glTexStorage3DEXT)() = nullptr; @for category,funcs in functions: @if funcs and category not in ['ES_VERSION_2_0']: