diff options
Diffstat (limited to 'src/3rdparty/ogl/OpenGL.h')
-rw-r--r-- | src/3rdparty/ogl/OpenGL.h | 184 |
1 files changed, 0 insertions, 184 deletions
diff --git a/src/3rdparty/ogl/OpenGL.h b/src/3rdparty/ogl/OpenGL.h deleted file mode 100644 index 3e416c7..0000000 --- a/src/3rdparty/ogl/OpenGL.h +++ /dev/null @@ -1,184 +0,0 @@ -#ifndef __OGL2D_H -#define __OGL2D_H -#include <vector> - -/* include gl.h before this file */ -namespace ogl2d -{ - /* 2d wrap of opengl 3.0 */ - class OpenGL - { - public: - OpenGL(); - ~OpenGL(); - - inline void enable(GLenum cap) - { - glEnable(cap); - } - - inline void disable(GLenum cap) - { - glDisable(cap); - } - - inline void setBlendFunc(GLenum sfactor, GLenum dfactor) - { - glBlendFunc(sfactor, dfactor); - } - - inline void setClearColor(GLubyte r, GLubyte g, GLubyte b, GLubyte a) - { - glClearColor(r / 255.f, g / 255.f, b / 255.f, a / 255.f); - } - - void pushColor(GLubyte r, GLubyte g, GLubyte b, GLubyte a = 255); - void popColor(); - void flushError(); - GLuint genTexture(); - void deleteTexture(GLuint texture); - void bindTexture(GLuint texture = 0); - inline GLuint curTexture() - { - return _texture; - } - void setTexParameter(GLenum pname, GLint param); - void texImage(GLint internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels = NULL); - void texSubImage(GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); - void activeTexUnit(unsigned int unit = 0); - - inline void drawArrays(GLenum mode, GLint first, GLsizei count) - { - glDrawArrays(mode, first, count); - } - - inline void drawBuffer(GLenum mode) - { - - } - - inline void drawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices) - { - - } - - inline void enableClientState(GLenum arr) - { - glEnableClientState(arr); - } - - inline void disableClientState(GLenum arr) - { - glDisableClientState(arr); - } - - inline GLuint genFrameBuffer() - { - GLuint fbo; - glGenFramebuffers(1, &fbo); - return fbo; - } - - inline void bindFrameBuffer(GLuint fbo) - { - glBindFramebuffer(GL_FRAMEBUFFER, fbo); - } - - // Ļһ - inline void ortho(int w, float radio) - { - glOrtho(0, w, w*radio, 0, -1, 1); - } - - inline void orthox(int w, int h) - { - glOrtho(0, w, h, 0, -1, 1); - } - - protected: - struct { GLubyte r, g, b, a; } _color; // current draw color - struct { GLubyte r, g, b, a; } _precolor; // previous draw color - GLuint _texture; // current binded texture - - }; - - ///* OpenGL instance singleton */ - extern OpenGL gl; - -#if defined(OGL2D_IMPLEMENT) - - OpenGL gl; - - OpenGL::OpenGL() - { - memset(&_color, 0xff, sizeof(_color)); - memset(&_precolor, 0xff, sizeof(_precolor)); - } - - OpenGL::~OpenGL() - { - } - - void OpenGL::pushColor(GLubyte r, GLubyte g, GLubyte b, GLubyte a) - { - memcpy(&_precolor, &_color, sizeof(_precolor)); - _color.r = r; - _color.g = g; - _color.b = b; - _color.a = a; - glColor4ub(r, g, b, a); - } - - void OpenGL::popColor() - { - memcpy(&_color, &_precolor, sizeof(_precolor)); - glColor4ub(_color.r, _color.g, _color.b, _color.a); - } - - void OpenGL::flushError() - { - while (glGetError() != GL_NO_ERROR); - } - - GLuint OpenGL::genTexture() - { - GLuint t; - glGenTextures(1, &t); - return t; - } - - void OpenGL::bindTexture(GLuint texture) - { - glBindTexture(GL_TEXTURE_2D, texture); - } - - void OpenGL::deleteTexture(GLuint texture) - { - glDeleteTextures(1, &texture); - } - - void OpenGL::setTexParameter(GLenum pname, GLint param) - { - glTexParameteri(GL_TEXTURE_2D, pname, param); - } - - void OpenGL::texImage(GLint internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) - { - glTexImage2D(GL_TEXTURE_2D, 0, internalformat, width, height, 0, format, type, pixels); - } - - void OpenGL::texSubImage(GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels) - { - glTexSubImage2D(GL_TEXTURE_2D, 0, xoffset, yoffset, width, height, format, type, pixels); - } - - void OpenGL::activeTexUnit(unsigned int unit) - { - // glActiveTexture selects which texture unit subsequent texture state calls will affect. - glActiveTexture(GL_TEXTURE0 + unit); - } - -#endif // OGL2D_IMPLEMENT -} - -#endif
\ No newline at end of file |