]> git.tdb.fi Git - libs/gl.git/blobdiff - source/technique.cpp
Remove the deprecated ProgramBuilder class
[libs/gl.git] / source / technique.cpp
index d6ec7115f6e703a5b215803952a27716f934e468..09799acee8841ac3eefe9d3fe1cfb5fa08801283 100644 (file)
@@ -28,6 +28,12 @@ const RenderPass &Technique::get_pass(const Tag &tag) const
        return get_item(passes, tag);
 }
 
+const RenderPass *Technique::find_pass(const Tag &tag) const
+{
+       PassMap::const_iterator i = passes.find(tag);
+       return (i!=passes.end() ? &i->second : 0);
+}
+
 bool Technique::replace_texture(const string &slot, const Texture &tex)
 {
        bool replaced = false;
@@ -129,6 +135,9 @@ void Technique::Loader::pass(const string &n)
        else
                load_sub(p);
 
+       if(!p.get_shader_program())
+               throw logic_error("no shader program in pass");
+
        insert_unique(obj.passes, n, p);
 }