typedef void opengl_BindTexture(GLenum target, GLuint texture); typedef void opengl_BlendFunc(GLenum sfactor, GLenum dfactor); typedef void opengl_Clear(GLbitfield mask); typedef void opengl_ClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); typedef void opengl_ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); typedef void opengl_ClearDepth(GLclampd depth); typedef void opengl_ClearIndex(GLfloat c); typedef void opengl_ClearStencil(GLint s); typedef void opengl_ClipPlane(GLenum plane, const GLdouble *equation); typedef void opengl_CullFace(GLenum mode); typedef void opengl_DeleteTextures(GLsizei n, const GLuint *textures); typedef void opengl_Disable(GLenum cap); typedef void opengl_DrawArrays(GLenum mode, GLint first, GLsizei count); typedef void opengl_DrawBuffer(GLenum mode); typedef void opengl_DrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices); typedef void opengl_DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount); typedef void opengl_Enable(GLenum cap); typedef void opengl_GenTextures(GLsizei n, GLuint *textures); typedef void opengl_GetClipPlane(GLenum plane, GLdouble *equation); typedef void opengl_GetDoublev(GLenum pname, GLdouble *params); typedef GLenum opengl_GetError(void); typedef void opengl_GetFloatv(GLenum pname, GLfloat *params); typedef void opengl_GetIntegerv(GLenum pname, GLint *params); typedef void opengl_GetPointerv(GLenum pname, GLvoid* *params); typedef const GLubyte * opengl_GetString(GLenum name); typedef void opengl_GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params); typedef void opengl_GetTexEnviv(GLenum target, GLenum pname, GLint *params); typedef void opengl_GetTexGendv(GLenum coord, GLenum pname, GLdouble *params); typedef void opengl_GetTexGenfv(GLenum coord, GLenum pname, GLfloat *params); typedef void opengl_GetTexGeniv(GLenum coord, GLenum pname, GLint *params); typedef void opengl_GetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels); typedef void opengl_GetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params); typedef void opengl_GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params); typedef void opengl_GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params); typedef void opengl_GetTexParameteriv(GLenum target, GLenum pname, GLint *params); typedef void opengl_Hint(GLenum target, GLenum mode); typedef GLboolean opengl_IsTexture(GLuint texture); typedef void opengl_LineWidth(GLfloat width); typedef void opengl_ListBase(GLuint base); typedef void opengl_LoadName(GLuint name); typedef void opengl_LogicOp(GLenum opcode); typedef void opengl_PointSize(GLfloat size); typedef void opengl_PolygonMode(GLenum face, GLenum mode); typedef void opengl_Scissor(GLint x, GLint y, GLsizei width, GLsizei height); typedef void opengl_TexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels); typedef void opengl_TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels); typedef void opengl_TexParameterf(GLenum target, GLenum pname, GLfloat param); typedef void opengl_TexParameterfv(GLenum target, GLenum pname, const GLfloat *params); typedef void opengl_TexParameteri(GLenum target, GLenum pname, GLint param); typedef void opengl_TexParameteriv(GLenum target, GLenum pname, const GLint *params); typedef void opengl_TexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels); typedef void opengl_TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); typedef void opengl_CompressedTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *pixels); typedef void opengl_ActiveTexture(GLenum texture); typedef void opengl_Viewport(GLint x, GLint y, GLsizei width, GLsizei height); typedef void opengl_GenBuffers(GLsizei n, GLuint *buffers); typedef void opengl_BindBuffer(GLenum target, GLuint buffer); typedef void opengl_BufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage); typedef void opengl_BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data); typedef void opengl_GenVertexArrays(GLsizei n, GLuint *arrays); typedef void opengl_BindVertexArray(GLenum array); typedef GLint opengl_GetAttribLocation(GLuint program, const GLchar *name); typedef void opengl_EnableVertexAttribArray(GLuint index); typedef void opengl_DisableVertexAttribArray(GLuint index); typedef void opengl_VertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer); typedef void opengl_VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer); typedef void opengl_VertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer); typedef void opengl_VertexAttribDivisor(GLuint index, GLuint divisor); typedef GLuint opengl_CreateShader(GLenum type); typedef void opengl_ShaderSource(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length); typedef void opengl_CompileShader(GLuint shader); typedef void opengl_DeleteShader(GLuint shader); typedef void opengl_GetShaderiv(GLuint shader, GLenum pname, GLint *params); typedef void opengl_GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog); typedef GLuint opengl_CreateProgram(void); typedef void opengl_UseProgram(GLuint program); typedef void opengl_AttachShader(GLuint program, GLuint shader); typedef void opengl_DeleteProgram(GLuint program); typedef void opengl_LinkProgram(GLuint program); typedef void opengl_GetProgramiv(GLuint program, GLenum pname, GLint *params); typedef void opengl_GetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog); typedef GLint opengl_GetUniformLocation(GLuint program, const GLchar *name); typedef void opengl_Uniform1i(GLint location, GLint v0); typedef void opengl_Uniform2f(GLint location, GLfloat v0, GLfloat v1); typedef void opengl_Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); typedef void opengl_UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); typedef void opengl_DebugMessageCallback(void (*)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *, const void *), const void *userParam); global opengl_BindTexture *glBindTexture = 0; global opengl_BlendFunc *glBlendFunc = 0; global opengl_Clear *glClear = 0; global opengl_ClearAccum *glClearAccum = 0; global opengl_ClearColor *glClearColor = 0; global opengl_ClearDepth *glClearDepth = 0; global opengl_ClearIndex *glClearIndex = 0; global opengl_ClearStencil *glClearStencil = 0; global opengl_ClipPlane *glClipPlane = 0; global opengl_CullFace *glCullFace = 0; global opengl_DeleteTextures *glDeleteTextures = 0; global opengl_Disable *glDisable = 0; global opengl_DrawArrays *glDrawArrays = 0; global opengl_DrawBuffer *glDrawBuffer = 0; global opengl_DrawElements *glDrawElements = 0; global opengl_DrawArraysInstanced *glDrawArraysInstanced = 0; global opengl_Enable *glEnable = 0; global opengl_GenTextures *glGenTextures = 0; global opengl_GetClipPlane *glGetClipPlane = 0; global opengl_GetDoublev *glGetDoublev = 0; global opengl_GetError *glGetError = 0; global opengl_GetFloatv *glGetFloatv = 0; global opengl_GetIntegerv *glGetIntegerv = 0; global opengl_GetPointerv *glGetPointerv = 0; global opengl_GetString *glGetString = 0; global opengl_GetTexEnvfv *glGetTexEnvfv = 0; global opengl_GetTexEnviv *glGetTexEnviv = 0; global opengl_GetTexGendv *glGetTexGendv = 0; global opengl_GetTexGenfv *glGetTexGenfv = 0; global opengl_GetTexGeniv *glGetTexGeniv = 0; global opengl_GetTexImage *glGetTexImage = 0; global opengl_GetTexLevelParameterfv *glGetTexLevelParameterfv = 0; global opengl_GetTexLevelParameteriv *glGetTexLevelParameteriv = 0; global opengl_GetTexParameterfv *glGetTexParameterfv = 0; global opengl_GetTexParameteriv *glGetTexParameteriv = 0; global opengl_Hint *glHint = 0; global opengl_IsTexture *glIsTexture = 0; global opengl_LineWidth *glLineWidth = 0; global opengl_ListBase *glListBase = 0; global opengl_LoadName *glLoadName = 0; global opengl_LogicOp *glLogicOp = 0; global opengl_PointSize *glPointSize = 0; global opengl_PolygonMode *glPolygonMode = 0; global opengl_Scissor *glScissor = 0; global opengl_TexImage1D *glTexImage1D = 0; global opengl_TexImage2D *glTexImage2D = 0; global opengl_TexParameterf *glTexParameterf = 0; global opengl_TexParameterfv *glTexParameterfv = 0; global opengl_TexParameteri *glTexParameteri = 0; global opengl_TexParameteriv *glTexParameteriv = 0; global opengl_TexSubImage1D *glTexSubImage1D = 0; global opengl_TexSubImage2D *glTexSubImage2D = 0; global opengl_CompressedTexImage2D *glCompressedTexImage2D = 0; global opengl_ActiveTexture *glActiveTexture = 0; global opengl_Viewport *glViewport = 0; global opengl_GenBuffers *glGenBuffers = 0; global opengl_BindBuffer *glBindBuffer = 0; global opengl_BufferData *glBufferData = 0; global opengl_BufferSubData *glBufferSubData = 0; global opengl_GenVertexArrays *glGenVertexArrays = 0; global opengl_BindVertexArray *glBindVertexArray = 0; global opengl_GetAttribLocation *glGetAttribLocation = 0; global opengl_EnableVertexAttribArray *glEnableVertexAttribArray = 0; global opengl_DisableVertexAttribArray *glDisableVertexAttribArray = 0; global opengl_VertexAttribPointer *glVertexAttribPointer = 0; global opengl_VertexAttribIPointer *glVertexAttribIPointer = 0; global opengl_VertexAttribLPointer *glVertexAttribLPointer = 0; global opengl_VertexAttribDivisor *glVertexAttribDivisor = 0; global opengl_CreateShader *glCreateShader = 0; global opengl_ShaderSource *glShaderSource = 0; global opengl_CompileShader *glCompileShader = 0; global opengl_DeleteShader *glDeleteShader = 0; global opengl_GetShaderiv *glGetShaderiv = 0; global opengl_GetShaderInfoLog *glGetShaderInfoLog = 0; global opengl_CreateProgram *glCreateProgram = 0; global opengl_UseProgram *glUseProgram = 0; global opengl_AttachShader *glAttachShader = 0; global opengl_DeleteProgram *glDeleteProgram = 0; global opengl_LinkProgram *glLinkProgram = 0; global opengl_GetProgramiv *glGetProgramiv = 0; global opengl_GetProgramInfoLog *glGetProgramInfoLog = 0; global opengl_GetUniformLocation *glGetUniformLocation = 0; global opengl_Uniform1i *glUniform1i = 0; global opengl_Uniform2f *glUniform2f = 0; global opengl_Uniform3f *glUniform3f = 0; global opengl_UniformMatrix4fv *glUniformMatrix4fv = 0; global opengl_DebugMessageCallback *glDebugMessageCallback = 0; extern void *OpenGL_LoadFunction(char *); static void OpenGL_LoadAllFunctions(void) { glBindTexture = (opengl_BindTexture *)OpenGL_LoadFunction("glBindTexture"); glBlendFunc = (opengl_BlendFunc *)OpenGL_LoadFunction("glBlendFunc"); glClear = (opengl_Clear *)OpenGL_LoadFunction("glClear"); glClearAccum = (opengl_ClearAccum *)OpenGL_LoadFunction("glClearAccum"); glClearColor = (opengl_ClearColor *)OpenGL_LoadFunction("glClearColor"); glClearDepth = (opengl_ClearDepth *)OpenGL_LoadFunction("glClearDepth"); glClearIndex = (opengl_ClearIndex *)OpenGL_LoadFunction("glClearIndex"); glClearStencil = (opengl_ClearStencil *)OpenGL_LoadFunction("glClearStencil"); glClipPlane = (opengl_ClipPlane *)OpenGL_LoadFunction("glClipPlane"); glCullFace = (opengl_CullFace *)OpenGL_LoadFunction("glCullFace"); glDeleteTextures = (opengl_DeleteTextures *)OpenGL_LoadFunction("glDeleteTextures"); glDisable = (opengl_Disable *)OpenGL_LoadFunction("glDisable"); glDrawArrays = (opengl_DrawArrays *)OpenGL_LoadFunction("glDrawArrays"); glDrawBuffer = (opengl_DrawBuffer *)OpenGL_LoadFunction("glDrawBuffer"); glDrawElements = (opengl_DrawElements *)OpenGL_LoadFunction("glDrawElements"); glDrawArraysInstanced = (opengl_DrawArraysInstanced *)OpenGL_LoadFunction("glDrawArraysInstanced"); glEnable = (opengl_Enable *)OpenGL_LoadFunction("glEnable"); glGenTextures = (opengl_GenTextures *)OpenGL_LoadFunction("glGenTextures"); glGetClipPlane = (opengl_GetClipPlane *)OpenGL_LoadFunction("glGetClipPlane"); glGetDoublev = (opengl_GetDoublev *)OpenGL_LoadFunction("glGetDoublev"); glGetError = (opengl_GetError *)OpenGL_LoadFunction("glGetError"); glGetFloatv = (opengl_GetFloatv *)OpenGL_LoadFunction("glGetFloatv"); glGetIntegerv = (opengl_GetIntegerv *)OpenGL_LoadFunction("glGetIntegerv"); glGetPointerv = (opengl_GetPointerv *)OpenGL_LoadFunction("glGetPointerv"); glGetString = (opengl_GetString *)OpenGL_LoadFunction("glGetString"); glGetTexEnvfv = (opengl_GetTexEnvfv *)OpenGL_LoadFunction("glGetTexEnvfv"); glGetTexEnviv = (opengl_GetTexEnviv *)OpenGL_LoadFunction("glGetTexEnviv"); glGetTexGendv = (opengl_GetTexGendv *)OpenGL_LoadFunction("glGetTexGendv"); glGetTexGenfv = (opengl_GetTexGenfv *)OpenGL_LoadFunction("glGetTexGenfv"); glGetTexGeniv = (opengl_GetTexGeniv *)OpenGL_LoadFunction("glGetTexGeniv"); glGetTexImage = (opengl_GetTexImage *)OpenGL_LoadFunction("glGetTexImage"); glGetTexLevelParameterfv = (opengl_GetTexLevelParameterfv *)OpenGL_LoadFunction("glGetTexLevelParameterfv"); glGetTexLevelParameteriv = (opengl_GetTexLevelParameteriv *)OpenGL_LoadFunction("glGetTexLevelParameteriv"); glGetTexParameterfv = (opengl_GetTexParameterfv *)OpenGL_LoadFunction("glGetTexParameterfv"); glGetTexParameteriv = (opengl_GetTexParameteriv *)OpenGL_LoadFunction("glGetTexParameteriv"); glHint = (opengl_Hint *)OpenGL_LoadFunction("glHint"); glIsTexture = (opengl_IsTexture *)OpenGL_LoadFunction("glIsTexture"); glLineWidth = (opengl_LineWidth *)OpenGL_LoadFunction("glLineWidth"); glListBase = (opengl_ListBase *)OpenGL_LoadFunction("glListBase"); glLoadName = (opengl_LoadName *)OpenGL_LoadFunction("glLoadName"); glLogicOp = (opengl_LogicOp *)OpenGL_LoadFunction("glLogicOp"); glPointSize = (opengl_PointSize *)OpenGL_LoadFunction("glPointSize"); glPolygonMode = (opengl_PolygonMode *)OpenGL_LoadFunction("glPolygonMode"); glScissor = (opengl_Scissor *)OpenGL_LoadFunction("glScissor"); glTexImage1D = (opengl_TexImage1D *)OpenGL_LoadFunction("glTexImage1D"); glTexImage2D = (opengl_TexImage2D *)OpenGL_LoadFunction("glTexImage2D"); glTexParameterf = (opengl_TexParameterf *)OpenGL_LoadFunction("glTexParameterf"); glTexParameterfv = (opengl_TexParameterfv *)OpenGL_LoadFunction("glTexParameterfv"); glTexParameteri = (opengl_TexParameteri *)OpenGL_LoadFunction("glTexParameteri"); glTexParameteriv = (opengl_TexParameteriv *)OpenGL_LoadFunction("glTexParameteriv"); glTexSubImage1D = (opengl_TexSubImage1D *)OpenGL_LoadFunction("glTexSubImage1D"); glTexSubImage2D = (opengl_TexSubImage2D *)OpenGL_LoadFunction("glTexSubImage2D"); glCompressedTexImage2D = (opengl_CompressedTexImage2D *)OpenGL_LoadFunction("glCompressedTexImage2D"); glActiveTexture = (opengl_ActiveTexture *)OpenGL_LoadFunction("glActiveTexture"); glViewport = (opengl_Viewport *)OpenGL_LoadFunction("glViewport"); glGenBuffers = (opengl_GenBuffers *)OpenGL_LoadFunction("glGenBuffers"); glBindBuffer = (opengl_BindBuffer *)OpenGL_LoadFunction("glBindBuffer"); glBufferData = (opengl_BufferData *)OpenGL_LoadFunction("glBufferData"); glBufferSubData = (opengl_BufferSubData *)OpenGL_LoadFunction("glBufferSubData"); glGenVertexArrays = (opengl_GenVertexArrays *)OpenGL_LoadFunction("glGenVertexArrays"); glBindVertexArray = (opengl_BindVertexArray *)OpenGL_LoadFunction("glBindVertexArray"); glGetAttribLocation = (opengl_GetAttribLocation *)OpenGL_LoadFunction("glGetAttribLocation"); glEnableVertexAttribArray = (opengl_EnableVertexAttribArray *)OpenGL_LoadFunction("glEnableVertexAttribArray"); glDisableVertexAttribArray = (opengl_DisableVertexAttribArray *)OpenGL_LoadFunction("glDisableVertexAttribArray"); glVertexAttribPointer = (opengl_VertexAttribPointer *)OpenGL_LoadFunction("glVertexAttribPointer"); glVertexAttribIPointer = (opengl_VertexAttribIPointer *)OpenGL_LoadFunction("glVertexAttribIPointer"); glVertexAttribLPointer = (opengl_VertexAttribLPointer *)OpenGL_LoadFunction("glVertexAttribLPointer"); glVertexAttribDivisor = (opengl_VertexAttribDivisor *)OpenGL_LoadFunction("glVertexAttribDivisor"); glCreateShader = (opengl_CreateShader *)OpenGL_LoadFunction("glCreateShader"); glShaderSource = (opengl_ShaderSource *)OpenGL_LoadFunction("glShaderSource"); glCompileShader = (opengl_CompileShader *)OpenGL_LoadFunction("glCompileShader"); glDeleteShader = (opengl_DeleteShader *)OpenGL_LoadFunction("glDeleteShader"); glGetShaderiv = (opengl_GetShaderiv *)OpenGL_LoadFunction("glGetShaderiv"); glGetShaderInfoLog = (opengl_GetShaderInfoLog *)OpenGL_LoadFunction("glGetShaderInfoLog"); glCreateProgram = (opengl_CreateProgram *)OpenGL_LoadFunction("glCreateProgram"); glUseProgram = (opengl_UseProgram *)OpenGL_LoadFunction("glUseProgram"); glAttachShader = (opengl_AttachShader *)OpenGL_LoadFunction("glAttachShader"); glDeleteProgram = (opengl_DeleteProgram *)OpenGL_LoadFunction("glDeleteProgram"); glLinkProgram = (opengl_LinkProgram *)OpenGL_LoadFunction("glLinkProgram"); glGetProgramiv = (opengl_GetProgramiv *)OpenGL_LoadFunction("glGetProgramiv"); glGetProgramInfoLog = (opengl_GetProgramInfoLog *)OpenGL_LoadFunction("glGetProgramInfoLog"); glGetUniformLocation = (opengl_GetUniformLocation *)OpenGL_LoadFunction("glGetUniformLocation"); glUniform1i = (opengl_Uniform1i *)OpenGL_LoadFunction("glUniform1i"); glUniform2f = (opengl_Uniform2f *)OpenGL_LoadFunction("glUniform2f"); glUniform3f = (opengl_Uniform3f *)OpenGL_LoadFunction("glUniform3f"); glUniformMatrix4fv = (opengl_UniformMatrix4fv *)OpenGL_LoadFunction("glUniformMatrix4fv"); glDebugMessageCallback = (opengl_DebugMessageCallback *)OpenGL_LoadFunction("glDebugMessageCallback"); }