summaryrefslogtreecommitdiff
path: root/gl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gl.cpp')
-rw-r--r--gl.cpp116
1 files changed, 59 insertions, 57 deletions
diff --git a/gl.cpp b/gl.cpp
index 54ab4c5..9cefa53 100644
--- a/gl.cpp
+++ b/gl.cpp
@@ -4,73 +4,75 @@
#ifdef WIN32
-void (*glGenBuffers)(GLsizei, GLuint*);
-void (*glDeleteBuffers)(GLsizei, GLuint*);
-void (*glBindBuffer)(GLenum, GLuint);
-void (*glBufferData)(GLenum, GLsizeiptr, const GLvoid*, GLenum);
-GLvoid* (*glMapBuffer)(GLenum, GLenum);
-GLboolean (*glUnmapBuffer)(GLenum);
+void (APIENTRY *glGenBuffers)(GLsizei, GLuint*);
+void (APIENTRY *glDeleteBuffers)(GLsizei, GLuint*);
+void (APIENTRY *glBindBuffer)(GLenum, GLuint);
+void (APIENTRY *glBufferData)(GLenum, GLsizeiptr, const GLvoid*, GLenum);
+GLvoid* (APIENTRY *glMapBuffer)(GLenum, GLenum);
+GLboolean (APIENTRY *glUnmapBuffer)(GLenum);
/* uniform */
-GLint (*glGetUniformLocation)(GLuint, const GLchar*);
-void (*glUniform1i)(GLint, GLint);
-void (*glUniform2f)(GLint, GLfloat, GLfloat);
-void (*glUniform3f)(GLint, GLfloat, GLfloat, GLfloat);
+GLint (APIENTRY *glGetUniformLocation)(GLuint, const GLchar*);
+void (APIENTRY *glUniform1i)(GLint, GLint);
+void (APIENTRY *glUniform2f)(GLint, GLfloat, GLfloat);
+void (APIENTRY *glUniform3f)(GLint, GLfloat, GLfloat, GLfloat);
+void (APIENTRY *glUniform1iv)(GLint, GLsizei, const GLint*);
/* texture */
-void (*glActiveTexture)(GLenum);
+void (APIENTRY *glActiveTexture)(GLenum);
/* program/shader */
-GLuint (*glCreateProgram)(void);
-void (*glLinkProgram)(GLuint);
-void (*glGetProgramiv)(GLuint, GLenum, GLint*);
-void (*glGetProgramInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
-void (*glUseProgram)(GLuint);
-void (*glDeleteProgram)(GLuint);
-
-GLuint (*glCreateShader)(GLenum);
-void (*glShaderSource)(GLuint, GLsizei, const GLchar**, const GLint*);
-void (*glCompileShader)(GLuint);
-void (*glGetShaderiv)(GLuint, GLenum, GLint*);
-void (*glGetShaderInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
-
-void (*glAttachShader)(GLuint, GLuint);
-void (*glDetachShader)(GLuint, GLuint);
-void (*glDeleteShader)(GLuint);
+GLuint (APIENTRY *glCreateProgram)(void);
+void (APIENTRY *glLinkProgram)(GLuint);
+void (APIENTRY *glGetProgramiv)(GLuint, GLenum, GLint*);
+void (APIENTRY *glGetProgramInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
+void (APIENTRY *glUseProgram)(GLuint);
+void (APIENTRY *glDeleteProgram)(GLuint);
+
+GLuint (APIENTRY *glCreateShader)(GLenum);
+void (APIENTRY *glShaderSource)(GLuint, GLsizei, const GLchar**, const GLint*);
+void (APIENTRY *glCompileShader)(GLuint);
+void (APIENTRY *glGetShaderiv)(GLuint, GLenum, GLint*);
+void (APIENTRY *glGetShaderInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
+
+void (APIENTRY *glAttachShader)(GLuint, GLuint);
+void (APIENTRY *glDetachShader)(GLuint, GLuint);
+void (APIENTRY *glDeleteShader)(GLuint);
//GL_DeleteBuffers glDeleteBuffers = NULL;
void win32_gl_init() {
- glGenBuffers = (void(*)(GLsizei, GLuint*))SDL_GL_GetProcAddress("glGenBuffers");
- glDeleteBuffers = (void(*)(GLsizei, GLuint*))SDL_GL_GetProcAddress("glDeleteBuffers");
- glBindBuffer = (void(*)(GLenum, GLuint))SDL_GL_GetProcAddress("glBindBuffer");
- glBufferData = (void(*)(GLenum, GLsizeiptr, const GLvoid*, GLenum))SDL_GL_GetProcAddress("glBufferData");
- glMapBuffer = (GLvoid*(*)(GLenum, GLenum))SDL_GL_GetProcAddress("glMapBuffer");
- glUnmapBuffer = (GLboolean(*)(GLenum))SDL_GL_GetProcAddress("glUnmapBuffer");
-
- glGetUniformLocation = (GLint(*)(GLuint, const GLchar*))SDL_GL_GetProcAddress("glGetUniformLocation");
- glUniform1i = (void(*)(GLint, GLint))SDL_GL_GetProcAddress("glUniform1i");
- glUniform2f = (void(*)(GLint, GLfloat, GLfloat))SDL_GL_GetProcAddress("glUniform2f");
- glUniform3f = (void(*)(GLint, GLfloat, GLfloat, GLfloat))SDL_GL_GetProcAddress("glUniform3f");
-
- glActiveTexture = (void(*)(GLenum))SDL_GL_GetProcAddress("glActiveTexture");
-
- glCreateProgram = (GLuint(*)(void))SDL_GL_GetProcAddress("glCreateProgram");
- glLinkProgram = (void(*)(GLuint))SDL_GL_GetProcAddress("glLinkProgram");
- glGetProgramiv = (void(*)(GLuint, GLenum, GLint*))SDL_GL_GetProcAddress("glGetProgramiv");
- glGetProgramInfoLog = (void(*)(GLuint, GLsizei, GLsizei*, GLchar*))SDL_GL_GetProcAddress("glGetProgramInfoLog");
- glUseProgram = (void(*)(GLuint))SDL_GL_GetProcAddress("glUseProgram");
- glDeleteProgram = (void(*)(GLuint))SDL_GL_GetProcAddress("glDeleteProgram");
-
- glCreateShader = (GLuint(*)(GLenum))SDL_GL_GetProcAddress("glCreateShader");
- glShaderSource = (void(*)(GLuint, GLsizei, const GLchar**, const GLint*))SDL_GL_GetProcAddress("glShaderSource");
- glCompileShader = (void(*)(GLuint))SDL_GL_GetProcAddress("glCompileShader");
- glGetShaderiv = (void(*)(GLuint, GLenum, GLint*))SDL_GL_GetProcAddress("glGetShaderiv");
- glGetShaderInfoLog = (void(*)(GLuint, GLsizei, GLsizei*, GLchar*))SDL_GL_GetProcAddress("glGetShaderInfoLog");
-
- glAttachShader = (void(*)(GLuint, GLuint))SDL_GL_GetProcAddress("glAttachShader");
- glDetachShader = (void(*)(GLuint, GLuint))SDL_GL_GetProcAddress("glDetachShader");
- glDeleteShader = (void(*)(GLuint))SDL_GL_GetProcAddress("glDeleteShader");
+ glGenBuffers = (void(APIENTRY*)(GLsizei, GLuint*))SDL_GL_GetProcAddress("glGenBuffers");
+ glDeleteBuffers = (void(APIENTRY*)(GLsizei, GLuint*))SDL_GL_GetProcAddress("glDeleteBuffers");
+ glBindBuffer = (void(APIENTRY*)(GLenum, GLuint))SDL_GL_GetProcAddress("glBindBuffer");
+ glBufferData = (void(APIENTRY*)(GLenum, GLsizeiptr, const GLvoid*, GLenum))SDL_GL_GetProcAddress("glBufferData");
+ glMapBuffer = (GLvoid*(APIENTRY*)(GLenum, GLenum))SDL_GL_GetProcAddress("glMapBuffer");
+ glUnmapBuffer = (GLboolean(APIENTRY*)(GLenum))SDL_GL_GetProcAddress("glUnmapBuffer");
+
+ glGetUniformLocation = (GLint(APIENTRY*)(GLuint, const GLchar*))SDL_GL_GetProcAddress("glGetUniformLocation");
+ glUniform1i = (void(APIENTRY*)(GLint, GLint))SDL_GL_GetProcAddress("glUniform1i");
+ glUniform2f = (void(APIENTRY*)(GLint, GLfloat, GLfloat))SDL_GL_GetProcAddress("glUniform2f");
+ glUniform3f = (void(APIENTRY*)(GLint, GLfloat, GLfloat, GLfloat))SDL_GL_GetProcAddress("glUniform3f");
+ glUniform1iv = (void(APIENTRY*)(GLint, GLsizei, const GLint*))SDL_GL_GetProcAddress("glUniform1iv");
+
+ glActiveTexture = (void(APIENTRY*)(GLenum))SDL_GL_GetProcAddress("glActiveTexture");
+
+ glCreateProgram = (GLuint(APIENTRY*)(void))SDL_GL_GetProcAddress("glCreateProgram");
+ glLinkProgram = (void(APIENTRY*)(GLuint))SDL_GL_GetProcAddress("glLinkProgram");
+ glGetProgramiv = (void(APIENTRY*)(GLuint, GLenum, GLint*))SDL_GL_GetProcAddress("glGetProgramiv");
+ glGetProgramInfoLog = (void(APIENTRY*)(GLuint, GLsizei, GLsizei*, GLchar*))SDL_GL_GetProcAddress("glGetProgramInfoLog");
+ glUseProgram = (void(APIENTRY*)(GLuint))SDL_GL_GetProcAddress("glUseProgram");
+ glDeleteProgram = (void(APIENTRY*)(GLuint))SDL_GL_GetProcAddress("glDeleteProgram");
+
+ glCreateShader = (GLuint(APIENTRY*)(GLenum))SDL_GL_GetProcAddress("glCreateShader");
+ glShaderSource = (void(APIENTRY*)(GLuint, GLsizei, const GLchar**, const GLint*))SDL_GL_GetProcAddress("glShaderSource");
+ glCompileShader = (void(APIENTRY*)(GLuint))SDL_GL_GetProcAddress("glCompileShader");
+ glGetShaderiv = (void(APIENTRY*)(GLuint, GLenum, GLint*))SDL_GL_GetProcAddress("glGetShaderiv");
+ glGetShaderInfoLog = (void(APIENTRY*)(GLuint, GLsizei, GLsizei*, GLchar*))SDL_GL_GetProcAddress("glGetShaderInfoLog");
+
+ glAttachShader = (void(APIENTRY*)(GLuint, GLuint))SDL_GL_GetProcAddress("glAttachShader");
+ glDetachShader = (void(APIENTRY*)(GLuint, GLuint))SDL_GL_GetProcAddress("glDetachShader");
+ glDeleteShader = (void(APIENTRY*)(GLuint))SDL_GL_GetProcAddress("glDeleteShader");
}
#endif