fixed bugs, added debug shaders, drawing a dungeon wall segment for testing
[vrlugburz] / src / opengl.h
1 #ifndef OPENGL_H_
2 #define OPENGL_H_
3
4 #include <GL/gl.h>
5 #include <GL/glext.h>
6
7 struct glcaps {
8         int ver_major, ver_minor;
9         int sdr, vbo;
10 } glcaps;
11
12 PFNGLGENBUFFERSPROC glGenBuffers;
13 PFNGLDELETEBUFFERSPROC glDeleteBuffers;
14 PFNGLBINDBUFFERPROC glBindBuffer;
15 PFNGLBUFFERDATAPROC glBufferData;
16
17 PFNGLCREATEPROGRAMPROC glCreateProgram;
18 PFNGLDELETEPROGRAMPROC glDeleteProgram;
19 PFNGLATTACHSHADERPROC glAttachShader;
20 PFNGLLINKPROGRAMPROC glLinkProgram;
21 PFNGLGETPROGRAMIVPROC glGetProgramiv;
22 PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog;
23 PFNGLUSEPROGRAMPROC glUseProgram;
24 PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation;
25 PFNGLUNIFORM1IPROC glUniform1i;
26 PFNGLUNIFORM1FPROC glUniform1f;
27 PFNGLUNIFORM2FPROC glUniform2f;
28 PFNGLUNIFORM3FPROC glUniform3f;
29 PFNGLUNIFORM4FPROC glUniform4f;
30 PFNGLUNIFORMMATRIX4FVPROC glUniformMatrix4fv;
31 PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation;
32 PFNGLVERTEXATTRIB3FPROC glVertexAttrib3f;
33 PFNGLCREATESHADERPROC glCreateShader;
34 PFNGLDELETESHADERPROC glDeleteShader;
35 PFNGLSHADERSOURCEPROC glShaderSource;
36 PFNGLCOMPILESHADERPROC glCompileShader;
37 PFNGLGETSHADERIVPROC glGetShaderiv;
38 PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog;
39 PFNGLBINDATTRIBLOCATIONPROC glBindAttribLocation;
40 PFNGLENABLEVERTEXATTRIBARRAYPROC glEnableVertexAttribArray;
41 PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray;
42 PFNGLVERTEXATTRIBPOINTERPROC glVertexAttribPointer;
43
44 int init_opengl(void);
45
46
47 #endif  /* OPENGL_H_ */