1!gles3_only 2namespaces translator,gles2 3 4# GLES 3.0 functions required by the translator library. 5 6%#include <GLES/gl.h> 7%#include <GLES3/gl3.h> 8%#include <GLES3/gl3ext.h> 9 10# glGetStringi 11GLconstubyteptr glGetStringi(GLenum name, GLint index); 12 13# VAOs 14void glGenVertexArrays(GLsizei n, GLuint* arrays); 15void glBindVertexArray(GLuint array); 16void glDeleteVertexArrays(GLsizei n, const GLuint *arrays); 17GLboolean glIsVertexArray(GLuint array); 18 19# Buffers 20void *glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); 21GLboolean glUnmapBuffer(GLenum target); 22void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length); 23 24void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); 25void glBindBufferBase(GLenum target, GLuint index, GLuint buffer); 26 27void glCopyBufferSubData(GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size); 28 29void glClearBufferiv(GLenum buffer, GLint drawBuffer, const GLint * value); 30void glClearBufferuiv(GLenum buffer, GLint drawBuffer, const GLuint * value); 31void glClearBufferfv(GLenum buffer, GLint drawBuffer, const GLfloat * value); 32void glClearBufferfi(GLenum buffer, GLint drawBuffer, GLfloat depth, GLint stencil); 33 34void glGetBufferParameteri64v(GLenum target, GLenum value, GLint64 * data); 35void glGetBufferPointerv(GLenum target, GLenum pname, GLvoid ** params); 36 37# UBOs 38void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); 39 40GLuint glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName); 41void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar **uniformNames, GLuint *uniformIndices); 42 43void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params); 44void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName); 45 46# More uniform setters 47void glUniform1ui(GLint location, GLuint v0); 48void glUniform2ui(GLint location, GLuint v0, GLuint v1); 49void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2); 50void glUniform4ui(GLint location, GLint v0, GLuint v1, GLuint v2, GLuint v3); 51void glUniform1uiv(GLint location, GLsizei count, const GLuint *value); 52void glUniform2uiv(GLint location, GLsizei count, const GLuint *value); 53void glUniform3uiv(GLint location, GLsizei count, const GLuint *value); 54void glUniform4uiv(GLint location, GLsizei count, const GLuint *value); 55void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 56void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 57void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 58void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 59void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 60void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 61 62void glGetUniformuiv(GLuint program, GLint location, GLuint *params); 63void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params); 64 65# More vertex attribute setters / queries 66void glVertexAttribI4i(GLuint index, GLint v0, GLint v1, GLint v2, GLint v3); 67void glVertexAttribI4ui(GLuint index, GLuint v0, GLuint v1, GLuint v2, GLuint v3); 68void glVertexAttribI4iv(GLuint index, const GLint *v); 69void glVertexAttribI4uiv(GLuint index, const GLuint *v); 70void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); 71void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params); 72void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params); 73 74# Instanced draws 75void glVertexAttribDivisor(GLuint index, GLuint divisor); 76void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei primcount); 77void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei primcount); 78 79# Draw with known index range 80void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices); 81 82# Sync 83GLsync glFenceSync(GLenum condition, GLbitfield flags); 84GLenum glClientWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout); 85void glWaitSync(GLsync wait_on, GLbitfield flags, GLuint64 timeout); 86void glDeleteSync(GLsync to_delete); 87GLboolean glIsSync(GLsync sync); 88void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); 89 90# MRT / MSAA render buffer 91void glDrawBuffers(GLsizei n, const GLenum *bufs); 92void glReadBuffer(GLenum src); 93void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); 94void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments); 95void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height); 96void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); 97void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params); 98void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 99 100# Transform feedback 101void glBeginTransformFeedback(GLenum primitiveMode); 102void glEndTransformFeedback(void); 103void glGenTransformFeedbacks(GLsizei n, GLuint *ids); 104void glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids); 105void glBindTransformFeedback(GLenum target, GLuint id); 106void glPauseTransformFeedback(void); 107void glResumeTransformFeedback(void); 108GLboolean glIsTransformFeedback(GLuint id); 109void glTransformFeedbackVaryings(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); 110void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, char * name); 111 112# Sampler objects 113void glGenSamplers(GLsizei n, GLuint *samplers); 114void glDeleteSamplers(GLsizei n, const GLuint * samplers); 115void glBindSampler(GLuint unit, GLuint sampler); 116void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param); 117void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param); 118void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat * params); 119void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint * params); 120void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat * params); 121void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint * params); 122GLboolean glIsSampler(GLuint sampler); 123 124# Query objects 125void glGenQueries(GLsizei n, GLuint * queries); 126void glDeleteQueries(GLsizei n, const GLuint * queries); 127void glBeginQuery(GLenum target, GLuint query); 128void glEndQuery(GLenum target); 129void glGetQueryiv(GLenum target, GLenum pname, GLint * params); 130void glGetQueryObjectuiv(GLuint query, GLenum pname, GLuint * params); 131GLboolean glIsQuery(GLuint query); 132 133# Shader binary objects 134void glProgramParameteri(GLuint program, GLenum pname, GLint value); 135void glProgramBinary(GLuint program, GLenum binaryFormat, const void *binary, GLsizei length); 136void glGetProgramBinary(GLuint program, GLsizei bufsize, GLsizei *length, GLenum *binaryFormat, void *binary); 137 138# New glGets 139GLint glGetFragDataLocation(GLuint program, const char * name); 140void glGetInteger64v(GLenum pname, GLint64 * data); 141void glGetIntegeri_v(GLenum target, GLuint index, GLint * data); 142void glGetInteger64i_v(GLenum target, GLuint index, GLint64 * data); 143 144# Array/3D textures 145void glTexImage3D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * data); 146void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 147void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * data); 148void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data); 149void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data); 150void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 151