1!gles31_only 2namespaces translator,gles2 3 4# GLES 3.1 functions required by the translator library. 5 6%#include <GLES/gl.h> 7%#include <GLES3/gl3.h> 8%#include <GLES3/gl31.h> 9 10## New gets 11void glGetBooleani_v(GLenum target, GLuint index, GLboolean * data); 12 13## Memory barriers 14void glMemoryBarrier(GLbitfield barriers); 15void glMemoryBarrierByRegion(GLbitfield barriers); 16 17## Program pipelines 18void glGenProgramPipelines(GLsizei n, GLuint *pipelines); 19void glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines); 20void glBindProgramPipeline(GLuint pipeline); 21 22void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params); 23void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); 24 25void glValidateProgramPipeline(GLuint pipeline); 26GLboolean glIsProgramPipeline(GLuint pipeline); 27void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program); 28 29## Separable shader programs 30void glActiveShaderProgram(GLuint pipeline, GLuint program); 31 32GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const char **strings); 33 34void glProgramUniform1f(GLuint program, GLint location, GLfloat v0); 35void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1); 36void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2); 37void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); 38void glProgramUniform1i(GLuint program, GLint location, GLint v0); 39void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1); 40void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2); 41void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3); 42void glProgramUniform1ui(GLuint program, GLint location, GLuint v0); 43void glProgramUniform2ui(GLuint program, GLint location, GLint v0, GLuint v1); 44void glProgramUniform3ui(GLuint program, GLint location, GLint v0, GLint v1, GLuint v2); 45void glProgramUniform4ui(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLuint v3); 46void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); 47void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); 48void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); 49void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat *value); 50void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint *value); 51void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint *value); 52void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint *value); 53void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint *value); 54void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); 55void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); 56void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); 57void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint *value); 58void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 59void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 60void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 61void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 62void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 63void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 64void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 65void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 66void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 67 68void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint * params); 69void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum * props, GLsizei bufSize, GLsizei * length, GLint * params); 70 71GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const char * name); 72GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const char * name); 73void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei * length, char * name); 74 75## Compute shaders 76void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format); 77void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z); 78void glDispatchComputeIndirect(GLintptr indirect); 79 80## Separate vertex format / buffer binding 81void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLintptr stride); 82void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex); 83void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); 84void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); 85void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor); 86 87## Indirect draws 88void glDrawArraysIndirect(GLenum mode, const void *indirect); 89void glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect); 90 91## Multisampling 92void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); 93void glSampleMaski(GLuint maskNumber, GLbitfield mask); 94void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val); 95 96## New framebuffer parameters 97void glFramebufferParameteri(GLenum target, GLenum pname, GLint param); 98void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint * params); 99 100## Texture LOD queries 101# Already used in Translator's validations. 102# void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat * params); 103# void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint * params); 104