]> git.tdb.fi Git - libs/gl.git/blobdiff - source/texture.cpp
Support samplers as independent objects
[libs/gl.git] / source / texture.cpp
index ab5700482ce02484efb7b960df00a9b3a95a0908..381a0a59d6eaed1453fa965b6e9062ba7233dcec 100644 (file)
@@ -238,7 +238,8 @@ void Texture::bind_to(unsigned i) const
                        glBindTexture(target, id);
                }
 
-               default_sampler.bind_to(i);
+               if(!unit.get_sampler())
+                       default_sampler.bind_to(i);
        }
 }
 
@@ -260,6 +261,9 @@ void Texture::unbind_from(unsigned i)
                        unit.bind();
                        glBindTexture(cur->target, 0);
                }
+
+               if(unit.get_sampler()==&cur->default_sampler)
+                       Sampler::unbind_from(i);
        }
 }