+void Technique::replace_texture(const string &slot, const Texture &tex)
+{
+ for(PassMap::iterator i=passes.begin(); i!=passes.end(); ++i)
+ {
+ int index = i->second.get_texture_index(slot);
+ if(index<0)
+ continue;
+ i->second.set_texture(index, &tex);
+ }
+}
+
+bool Technique::has_shaders() const
+{
+ for(PassMap::const_iterator i=passes.begin(); i!=passes.end(); ++i)
+ if(i->second.get_shader_program())
+ return true;
+ return false;
+}
+