| #ifndef SHADER_UTIL_H |
| #define SHADER_UTIL_H |
| |
| |
| |
| struct uniform_info |
| { |
| const char *name; |
| GLuint size; |
| GLenum type; /**< GL_FLOAT or GL_INT */ |
| GLfloat value[4]; |
| GLint location; /**< filled in by InitUniforms() */ |
| }; |
| |
| #define END_OF_UNIFORMS { NULL, 0, GL_NONE, { 0, 0, 0, 0 }, -1 } |
| |
| |
| extern GLboolean |
| ShadersSupported(void); |
| |
| extern GLuint |
| CompileShaderText(GLenum shaderType, const char *text); |
| |
| extern GLuint |
| CompileShaderFile(GLenum shaderType, const char *filename); |
| |
| extern GLuint |
| LinkShaders(GLuint vertShader, GLuint fragShader); |
| |
| extern void |
| InitUniforms(GLuint program, struct uniform_info uniforms[]); |
| |
| |
| #endif /* SHADER_UTIL_H */ |