<OpenGLAPI>
<category name="GL_EXT_separate_shader_objects" number="377">
<!-- Alias of CURRENT_PROGRAM -->
- <enum name="ACTIVE_PROGRAM_EXT" value="0x8B8D"/>
+<!-- <enum name="ACTIVE_PROGRAM_EXT" value="0x8B8D"/> -->
<function name="UseShaderProgramEXT" deprecated="3.1" offset="assign" exec="skip">
<param name="type" type="GLenum"/>
<param name="string" type="const GLchar *"/>
<return type="GLuint"/>
</function>
+
+
+ <enum name="ACTIVE_PROGRAM_EXT" value="0x8259"/>
+ <enum name="PROGRAM_PIPELINE_BINDING_EXT" value="0x825A"/>
+ <enum name="VERTEX_SHADER_BIT_EXT" value="0x00000001"/>
+ <enum name="FRAGMENT_SHADER_BIT_EXT" value="0x00000002"/>
+ <enum name="ALL_SHADER_BITS_EXT" value="0xFFFFFFFF"/>
+ <enum name="PROGRAM_SEPARABLE_EXT" value="0x8258"/>
+
+ <function name="UseProgramStagesEXT" alias="UseProgramStages" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ <param name="stages" type="GLbitfield"/>
+ <param name="program" type="GLuint"/>
+ </function>
+ <function name="ActiveShaderProgramEXT" alias="ActiveShaderProgram" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ <param name="program" type="GLuint"/>
+ </function>
+ <function name="CreateShaderProgramvEXT" alias="CreateShaderProgramv" static_dispatch="false" es2="2.0">
+ <param name="type" type="GLenum"/>
+ <param name="count" type="GLsizei"/>
+ <param name="strings" type="const GLchar * const *"/>
+ <return type="GLuint"/>
+ </function>
+ <function name="BindProgramPipelineEXT" alias="BindProgramPipeline" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ </function>
+ <function name="DeleteProgramPipelinesEXT" alias="DeleteProgramPipelines" static_dispatch="false" es2="2.0">
+ <param name="n" type="GLsizei"/>
+ <param name="pipelines" type="const GLuint *"/>
+ </function>
+ <function name="GenProgramPipelinesEXT" alias="GenProgramPipelines" static_dispatch="false" es2="2.0">
+ <param name="n" type="GLsizei"/>
+ <param name="pipelines" type="GLuint *"/>
+ </function>
+ <function name="IsProgramPipelineEXT" alias="IsProgramPipeline" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ <return type="GLboolean"/>
+ </function>
+ <function name="ProgramParameteriEXT" alias="ProgramParameteri" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="pname" type="GLenum"/>
+ <param name="value" type="GLint"/>
+ </function>
+ <function name="GetProgramPipelineivEXT" alias="GetProgramPipelineiv" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ <param name="pname" type="GLenum"/>
+ <param name="params" type="GLint *"/>
+ </function>
+ <function name="ProgramUniform1iEXT" alias="ProgramUniform1i" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLint"/>
+ </function>
+ <function name="ProgramUniform2iEXT" alias="ProgramUniform2i" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLint"/>
+ <param name="y" type="GLint"/>
+ </function>
+ <function name="ProgramUniform3iEXT" alias="ProgramUniform3i" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLint"/>
+ <param name="y" type="GLint"/>
+ <param name="z" type="GLint"/>
+ </function>
+ <function name="ProgramUniform4iEXT" alias="ProgramUniform4i" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLint"/>
+ <param name="y" type="GLint"/>
+ <param name="z" type="GLint"/>
+ <param name="w" type="GLint"/>
+ </function>
+ <function name="ProgramUniform1uiEXT" alias="ProgramUniform1ui" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLuint"/>
+ </function>
+ <function name="ProgramUniform2uiEXT" alias="ProgramUniform2ui" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLuint"/>
+ <param name="y" type="GLuint"/>
+ </function>
+ <function name="ProgramUniform3uiEXT" alias="ProgramUniform3ui" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLuint"/>
+ <param name="y" type="GLuint"/>
+ <param name="z" type="GLuint"/>
+ </function>
+ <function name="ProgramUniform4uiEXT" alias="ProgramUniform4ui" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLuint"/>
+ <param name="y" type="GLuint"/>
+ <param name="z" type="GLuint"/>
+ <param name="w" type="GLuint"/>
+ </function>
+ <function name="ProgramUniform1fEXT" alias="ProgramUniform1f" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLfloat"/>
+ </function>
+ <function name="ProgramUniform2fEXT" alias="ProgramUniform2f" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLfloat"/>
+ <param name="y" type="GLfloat"/>
+ </function>
+ <function name="ProgramUniform3fEXT" alias="ProgramUniform3f" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLfloat"/>
+ <param name="y" type="GLfloat"/>
+ <param name="z" type="GLfloat"/>
+ </function>
+ <function name="ProgramUniform4fEXT" alias="ProgramUniform4f" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="x" type="GLfloat"/>
+ <param name="y" type="GLfloat"/>
+ <param name="z" type="GLfloat"/>
+ <param name="w" type="GLfloat"/>
+ </function>
+ <function name="ProgramUniform1ivEXT" alias="ProgramUniform1iv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLint *"/>
+ </function>
+ <function name="ProgramUniform2ivEXT" alias="ProgramUniform2iv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLint *"/>
+ </function>
+ <function name="ProgramUniform3ivEXT" alias="ProgramUniform3iv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLint *"/>
+ </function>
+ <function name="ProgramUniform4ivEXT" alias="ProgramUniform4iv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLint *"/>
+ </function>
+ <function name="ProgramUniform1uivEXT" alias="ProgramUniform1uiv" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLuint *"/>
+ </function>
+ <function name="ProgramUniform2uivEXT" alias="ProgramUniform2uiv" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLuint *"/>
+ </function>
+ <function name="ProgramUniform3uivEXT" alias="ProgramUniform3uiv" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLuint *"/>
+ </function>
+ <function name="ProgramUniform4uivEXT" alias="ProgramUniform4uiv" static_dispatch="false" es2="3.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLuint *"/>
+ </function>
+ <function name="ProgramUniform1fvEXT" alias="ProgramUniform1fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniform2fvEXT" alias="ProgramUniform2fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniform3fvEXT" alias="ProgramUniform3fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniform4fvEXT" alias="ProgramUniform4fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix2fvEXT" alias="ProgramUniformMatrix2fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix3fvEXT" alias="ProgramUniformMatrix3fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix4fvEXT" alias="ProgramUniformMatrix4fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix2x3fvEXT" alias="ProgramUniformMatrix2x3fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix3x2fvEXT" alias="ProgramUniformMatrix3x2fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix2x4fvEXT" alias="ProgramUniformMatrix2x4fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix4x2fvEXT" alias="ProgramUniformMatrix4x2fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix3x4fvEXT" alias="ProgramUniformMatrix3x4fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ProgramUniformMatrix4x3fvEXT" alias="ProgramUniformMatrix4x3fv" static_dispatch="false" es2="2.0">
+ <param name="program" type="GLuint"/>
+ <param name="location" type="GLint"/>
+ <param name="count" type="GLsizei"/>
+ <param name="transpose" type="GLboolean"/>
+ <param name="value" type="const GLfloat *"/>
+ </function>
+ <function name="ValidateProgramPipelineEXT" alias="ValidateProgramPipeline" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ </function>
+ <function name="GetProgramPipelineInfoLogEXT" alias="GetProgramPipelineInfoLog" static_dispatch="false" es2="2.0">
+ <param name="pipeline" type="GLuint"/>
+ <param name="bufSize" type="GLsizei"/>
+ <param name="length" type="GLsizei *"/>
+ <param name="infoLog" type="GLchar *"/>
+ </function>
</category>
</OpenGLAPI>
{ "glGetProgramBinaryOES", 20, -1 },
{ "glProgramBinaryOES", 20, -1 },
+ /* GL_EXT_separate_shader_objects - Also part of OpenGL ES 3.1. */
+ { "glProgramParameteriEXT", 20, -1 },
+ { "glUseProgramStagesEXT", 20, -1 },
+ { "glActiveShaderProgramEXT", 20, -1 },
+ { "glCreateShaderProgramvEXT", 20, -1 },
+ { "glBindProgramPipelineEXT", 20, -1 },
+ { "glDeleteProgramPipelinesEXT", 20, -1 },
+ { "glGenProgramPipelinesEXT", 20, -1 },
+ { "glIsProgramPipelineEXT", 20, -1 },
+ { "glGetProgramPipelineivEXT", 20, -1 },
+ { "glProgramUniform1iEXT", 20, -1 },
+ { "glProgramUniform1ivEXT", 20, -1 },
+ { "glProgramUniform1fEXT", 20, -1 },
+ { "glProgramUniform1fvEXT", 20, -1 },
+ { "glProgramUniform2iEXT", 20, -1 },
+ { "glProgramUniform2ivEXT", 20, -1 },
+ { "glProgramUniform2fEXT", 20, -1 },
+ { "glProgramUniform2fvEXT", 20, -1 },
+ { "glProgramUniform3iEXT", 20, -1 },
+ { "glProgramUniform3ivEXT", 20, -1 },
+ { "glProgramUniform3fEXT", 20, -1 },
+ { "glProgramUniform3fvEXT", 20, -1 },
+ { "glProgramUniform4iEXT", 20, -1 },
+ { "glProgramUniform4ivEXT", 20, -1 },
+ { "glProgramUniform4fEXT", 20, -1 },
+ { "glProgramUniform4fvEXT", 20, -1 },
+ { "glProgramUniformMatrix2fvEXT", 20, -1 },
+ { "glProgramUniformMatrix3fvEXT", 20, -1 },
+ { "glProgramUniformMatrix4fvEXT", 20, -1 },
+ { "glProgramUniformMatrix2x3fvEXT", 20, -1 },
+ { "glProgramUniformMatrix3x2fvEXT", 20, -1 },
+ { "glProgramUniformMatrix2x4fvEXT", 20, -1 },
+ { "glProgramUniformMatrix4x2fvEXT", 20, -1 },
+ { "glProgramUniformMatrix3x4fvEXT", 20, -1 },
+ { "glProgramUniformMatrix4x3fvEXT", 20, -1 },
+ { "glValidateProgramPipelineEXT", 20, -1 },
+ { "glGetProgramPipelineInfoLogEXT", 20, -1 },
{ NULL, 0, -1 }
};
// { "glMapBufferRange", 30, -1 },
{ "glPauseTransformFeedback", 30, -1 },
// glProgramBinary aliases glProgramBinaryOES in GLES 2
- { "glProgramParameteri", 30, -1 },
+ // glProgramParameteri aliases glProgramParameteriEXT in GLES 2
// We check for the aliased -NV version in GLES 2
// { "glReadBuffer", 30, -1 },
{ "glRenderbufferStorageMultisample", 30, -1 },
{ "glVertexAttribI4uiv", 30, -1 },
{ "glVertexAttribIPointer", 30, -1 },
{ "glWaitSync", 30, -1 },
+
+ /* GL_EXT_separate_shader_objects - Also part of OpenGL ES 3.1. */
+ { "glProgramUniform1uiEXT", 30, -1 },
+ { "glProgramUniform1uivEXT", 30, -1 },
+ { "glProgramUniform2uiEXT", 30, -1 },
+ { "glProgramUniform2uivEXT", 30, -1 },
+ { "glProgramUniform3uiEXT", 30, -1 },
+ { "glProgramUniform3uivEXT", 30, -1 },
+ { "glProgramUniform4uiEXT", 30, -1 },
+ { "glProgramUniform4uivEXT", 30, -1 },
+
{ NULL, 0, -1 }
};