9388ec21da03099a5aa12f48fbfcbb4acd7b934e
[vrlugburz] / src / opengl.h
1 #ifndef OPENGL_H_
2 #define OPENGL_H_
3
4 #include <GL/gl.h>
5
6 #ifndef GL_VERSION_2_0
7 #define LOADEXT_SDR
8 #endif
9
10 #include <GL/glext.h>
11
12 struct glcaps {
13         int ver_major, ver_minor;
14         int sdr;
15 } glcaps;
16
17 #ifndef LOADEXT_SDR
18 PFNGLCREATEPROGRAMPROC glCreateProgram;
19 PFNGLDELETEPROGRAMPROC glDeleteProgram;
20 PFNGLATTACHSHADERPROC glAttachShader;
21 PFNGLLINKPROGRAMPROC glLinkProgram;
22 PFNGLGETPROGRAMIVPROC glGetProgramiv;
23 PFNGLGETPROGRAMINFOLOGPROC glGetProgramInfoLog;
24 PFNGLUSEPROGRAMPROC glUseProgram;
25 PFNGLGETUNIFORMLOCATIONPROC glGetUniformLocation;
26 PFNGLUNIFORM1IPROC glUniform1i;
27 PFNGLUNIFORM1FPROC glUniform1f;
28 PFNGLUNIFORM2FPROC glUniform2f;
29 PFNGLUNIFORM3FPROC glUniform3f;
30 PFNGLUNIFORM4FPROC glUniform4f;
31 PFNGLUNIFORMMATRIX4FVPROC glUniformMatrix4fv;
32 PFNGLGETATTRIBLOCATIONPROC glGetAttribLocation;
33 PFNGLVERTEXATTRIB3FPROC glVertexAttrib3f;
34 PFNGLCREATESHADERPROC glCreateShader;
35 PFNGLDELETESHADERPROC glDeleteShader;
36 PFNGLSHADERSOURCEPROC glShaderSource;
37 PFNGLCOMPILESHADERPROC glCompileShader;
38 PFNGLGETSHADERIVPROC glGetShaderiv;
39 PFNGLGETSHADERINFOLOGPROC glGetShaderInfoLog;
40 #endif
41
42 int init_opengl(void);
43
44
45 #endif  /* OPENGL_H_ */