diff options
author | Vegard Storheil Eriksen <zyp@jvnv.net> | 2010-05-21 19:24:51 +0200 |
---|---|---|
committer | Vegard Storheil Eriksen <zyp@jvnv.net> | 2010-05-21 19:24:51 +0200 |
commit | 267bebfc227c94f543a39e2aa75fb101bc06932e (patch) | |
tree | 40ad8057634ba80aa19c61f57884982fd59f6b56 /shader.h | |
parent | 88b1e9e505dad78fd2c3ff927495d322b11491ca (diff) |
Moved engine-sources to seperate subdirectory.
Diffstat (limited to 'shader.h')
-rw-r--r-- | shader.h | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/shader.h b/shader.h deleted file mode 100644 index 012165a..0000000 --- a/shader.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef _SHADER_H_ -#define _SHADER_H_ - -#include <iostream> -#include <string> -#define GL_GLEXT_PROTOTYPES -#ifndef __APPLE__ -#include <GL/gl.h> -#include <GL/glu.h> -#else -#include <OpenGL/gl.h> -#include <OpenGL/glu.h> -#endif - -class GLBaseShader { - friend class GLShaderProgram; - - protected: - bool shader_source(const char *filename); - bool shader_source(std::string& filename); - unsigned int shader; - public: - GLBaseShader(GLenum); -}; - -class GLVertexShader : public GLBaseShader { - public: - GLVertexShader() : GLBaseShader(GL_VERTEX_SHADER) {}; - GLVertexShader(const char *s) : GLBaseShader(GL_VERTEX_SHADER) { shader_source(s); }; - GLVertexShader(std::string& s) : GLBaseShader(GL_VERTEX_SHADER) { shader_source(s); }; -}; - -class GLFragmentShader : public GLBaseShader { - public: - GLFragmentShader() : GLBaseShader(GL_FRAGMENT_SHADER) {}; - GLFragmentShader(const char *s) : GLBaseShader(GL_FRAGMENT_SHADER) { shader_source(s); }; - GLFragmentShader(std::string& s) : GLBaseShader(GL_FRAGMENT_SHADER) { shader_source(s); }; -}; - -class GLShaderProgram { - protected: - unsigned int program; - public: - GLShaderProgram(); - - bool attach(GLBaseShader&); - bool detach(GLBaseShader&); - bool link(); - bool use(); - void remove(); -}; - -void print_ogl_error(GLenum); -bool print_check_ogl_error(); - -#endif |