X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Ftexturing.h;h=2b409d64fb713ee221a4842110832258bd92f711;hp=51070ffa4d06cdbf3291529eef50cb1ca7a27821;hb=abb4e50bdbb6d62d7e6ee249d52353ccf22762a4;hpb=f14435e58bfa0fa697a06ba9a454bb30cd37d9d8 diff --git a/source/texturing.h b/source/texturing.h index 51070ffa..2b409d64 100644 --- a/source/texturing.h +++ b/source/texturing.h @@ -7,36 +7,32 @@ namespace Msp { namespace GL { -class TexEnv; class Texture; class Texturing: public Bindable { private: - struct Attachment - { - const Texture *tex; - const TexEnv *env; + std::vector attachments; - Attachment(); - }; - - std::vector attachments; + static bool legacy_used; public: ~Texturing(); void attach(unsigned, const Texture &); - void attach(unsigned, const Texture &, const TexEnv &); void detach(unsigned); private: - void set_attachment(unsigned, const Texture *, const TexEnv *); - void bind_attachment(unsigned) const; + void set_attachment(unsigned, const Texture *); +public: + const Texture *get_attached_texture(unsigned) const; + +private: + void bind_attachment(unsigned, bool) const; static void unbind_attachment(unsigned); public: - void bind() const; + void bind(bool = true) const; static void unbind(); };