summaryrefslogtreecommitdiff
path: root/gl.h
diff options
context:
space:
mode:
authorJon Bergli Heier <snakebite@jvnv.net>2011-05-11 20:18:54 +0200
committerJon Bergli Heier <snakebite@jvnv.net>2011-05-11 20:18:54 +0200
commit40079a61d9269e54379985d16795c30499044ed5 (patch)
tree8c789271456ff7a5d9afccb74d5b08c8de96cbec /gl.h
parent0ad016d39848584f51df9d2464b6aef5ab31485a (diff)
parentbd843834dd6655d96b64d1ab72ab7b2983946199 (diff)
Merge branch 'win32'
Diffstat (limited to 'gl.h')
-rw-r--r--gl.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/gl.h b/gl.h
index bb28c20..1bbd9a5 100644
--- a/gl.h
+++ b/gl.h
@@ -1,7 +1,51 @@
#ifndef GL_H
#define GL_H
+#ifndef WIN32
#define GL_GLEXT_PROTOTYPES
+#endif
+
#include <SDL_opengl.h>
+#ifdef WIN32
+/* buffer */
+extern void (APIENTRY *glGenBuffers)(GLsizei, GLuint*);
+extern void (APIENTRY *glDeleteBuffers)(GLsizei, GLuint*);
+extern void (APIENTRY *glBindBuffer)(GLenum, GLuint);
+extern void (APIENTRY *glBufferData)(GLenum, GLsizeiptr, const GLvoid*, GLenum);
+extern GLvoid* (APIENTRY *glMapBuffer)(GLenum, GLenum);
+extern GLboolean (APIENTRY *glUnmapBuffer)(GLenum);
+
+/* uniform */
+extern GLint (APIENTRY *glGetUniformLocation)(GLuint, const GLchar*);
+extern void (APIENTRY *glUniform1i)(GLint, GLint);
+extern void (APIENTRY *glUniform2f)(GLint, GLfloat, GLfloat);
+extern void (APIENTRY *glUniform3f)(GLint, GLfloat, GLfloat, GLfloat);
+extern void (APIENTRY *glUniform1iv)(GLint, GLsizei, const GLint*);
+
+/* texture */
+extern void (APIENTRY *glActiveTexture)(GLenum);
+
+/* program/shader */
+extern GLuint (APIENTRY *glCreateProgram)(void);
+extern void (APIENTRY *glLinkProgram)(GLuint);
+extern void (APIENTRY *glGetProgramiv)(GLuint, GLenum, GLint*);
+extern void (APIENTRY *glGetProgramInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
+extern void (APIENTRY *glUseProgram)(GLuint);
+extern void (APIENTRY *glDeleteProgram)(GLuint);
+
+extern GLuint (APIENTRY *glCreateShader)(GLenum);
+extern void (APIENTRY *glShaderSource)(GLuint, GLsizei, const GLchar**, const GLint*);
+extern void (APIENTRY *glCompileShader)(GLuint);
+extern void (APIENTRY *glGetShaderiv)(GLuint, GLenum, GLint*);
+extern void (APIENTRY *glGetShaderInfoLog)(GLuint, GLsizei, GLsizei*, GLchar*);
+
+extern void (APIENTRY *glAttachShader)(GLuint, GLuint);
+extern void (APIENTRY *glDetachShader)(GLuint, GLuint);
+extern void (APIENTRY *glDeleteShader)(GLuint);
+
+void win32_gl_init();
+#endif
+
+
#endif