]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/renderpass.cpp
Use Tag to identify uniforms in Program and ProgramData
[libs/gl.git] / source / materials / renderpass.cpp
index 5ee50f8a1726b39cf986740db7326c699281f2d6..7431a4461d9977fe6ef601019a12a5705bc63d98 100644 (file)
@@ -106,22 +106,19 @@ void RenderPass::set_shader_program(const Program *prog, const ProgramData *data
                finalize_material(0);
 }
 
-const string &RenderPass::get_slotted_uniform_name(const string &slot) const
+Tag RenderPass::get_slotted_uniform_tag(Tag slot) const
 {
-       map<string, string>::const_iterator i = uniform_slots.find(slot);
+       map<Tag, Tag>::const_iterator i = uniform_slots.find(slot);
        if(i==uniform_slots.end())
-       {
-               static string empty;
-               return empty;
-       }
+               return Tag();
        return i->second;
 }
 
-void RenderPass::set_material(const Material *mat)
+void RenderPass::set_material(const Material *mat, DataFile::Collection *coll)
 {
        material = mat;
        material.keep();
-       finalize_material(0);
+       finalize_material(coll);
 }
 
 void RenderPass::set_texture(unsigned index, const Texture *tex, const Sampler *samp)