X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftexturing.cpp;h=db8ee65359a87993fe707fd0182bda4f210e1f51;hb=f1b12c992db974c679d85ae6ec22cd318199d0d5;hp=880f3f0751a40df642d4b7d713d3497c94476da2;hpb=2e7f19b895424c3a77940e648639f8df2b395d0f;p=libs%2Fgl.git diff --git a/source/texturing.cpp b/source/texturing.cpp index 880f3f07..db8ee653 100644 --- a/source/texturing.cpp +++ b/source/texturing.cpp @@ -1,4 +1,3 @@ -#include "texenv.h" #include "texture.h" #include "texturing.h" #include "texunit.h" @@ -16,20 +15,15 @@ Texturing::~Texturing() void Texturing::attach(unsigned attch, const Texture &tex) { - set_attachment(attch, &tex, 0); -} - -void Texturing::attach(unsigned attch, const Texture &tex, const TexEnv &env) -{ - set_attachment(attch, &tex, &env); + set_attachment(attch, &tex); } void Texturing::detach(unsigned attch) { - set_attachment(attch, 0, 0); + set_attachment(attch, 0); } -void Texturing::set_attachment(unsigned attch, const Texture *tex, const TexEnv *env) +void Texturing::set_attachment(unsigned attch, const Texture *tex) { if(attch>=TexUnit::get_n_units()) throw out_of_range("Texturing::set_attachment"); @@ -38,7 +32,6 @@ void Texturing::set_attachment(unsigned attch, const Texture *tex, const TexEnv attachments.resize(attch+1); attachments[attch].tex = tex; - attachments[attch].env = env; if(current()==this) bind_attachment(attch); @@ -47,22 +40,15 @@ void Texturing::set_attachment(unsigned attch, const Texture *tex, const TexEnv void Texturing::bind_attachment(unsigned i) const { const Attachment &attch = attachments[i]; - TexUnit::activate(i); if(attch.tex) - attch.tex->bind(); - else - Texture::unbind(); - if(attch.env) - attch.env->bind(); + attch.tex->bind_to(i); else - TexEnv::unbind(); + Texture::unbind_from(i); } void Texturing::unbind_attachment(unsigned i) { - TexUnit::activate(i); - Texture::unbind(); - TexEnv::unbind(); + Texture::unbind_from(i); } void Texturing::bind() const @@ -92,8 +78,7 @@ void Texturing::unbind() Texturing::Attachment::Attachment(): - tex(0), - env(0) + tex(0) { } } // namespace GL