X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftexenv.h;h=55704e580ecb4719712ffccef86ec2b5f69b495d;hb=5172d32d67595ea0b70184fadcfcb8e023cccbc8;hp=8a341db331e13371939fbd7216499e3cc76b10df;hpb=7adcad3b40a03000a82e32db4523761c218309b8;p=libs%2Fgl.git diff --git a/source/texenv.h b/source/texenv.h index 8a341db3..55704e58 100644 --- a/source/texenv.h +++ b/source/texenv.h @@ -1,11 +1,45 @@ +/* $Id$ + +This file is part of libmspgl +Copyright © 2007-2008 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + #ifndef MSP_GL_TEXENV_H_ #define MSP_GL_TEXENV_H_ +#include "color.h" +#include "gl.h" + namespace Msp { namespace GL { +enum TexEnvMode +{ + REPLACE = GL_REPLACE, + MODULATE = GL_MODULATE, + DECAL = GL_DECAL, + BLEND = GL_BLEND, + ADD = GL_ADD, + COMBINE = GL_COMBINE +}; + class TexEnv { +private: + TexEnvMode mode; + Color color; + +public: + TexEnv(); + void set_mode(TexEnvMode); + void set_color(const Color &); + TexEnvMode get_mode() const { return mode; } + const Color &get_color() const { return color; } + void bind() const; + + static const TexEnv *current(); + static void unbind(); }; } // namespace GL