]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/rendermethod.cpp
Fix loading of inline materials and lights
[libs/gl.git] / source / materials / rendermethod.cpp
index a6a843ee59f1770dbe17b9d9d2286ad3c79a8dcf..053197589ab1fe6e9d3c83c78261ffc3e27ebc0e 100644 (file)
@@ -124,12 +124,6 @@ void RenderMethod::set_debug_name(const string &name)
 
 DataFile::Loader::ActionMap RenderMethod::Loader::shared_actions;
 
-RenderMethod::Loader::Loader(RenderMethod &p):
-       DataFile::CollectionObjectLoader<RenderMethod>(p, 0)
-{
-       set_actions(shared_actions);
-}
-
 RenderMethod::Loader::Loader(RenderMethod &p, Collection &c):
        DataFile::CollectionObjectLoader<RenderMethod>(p, &c)
 {
@@ -164,11 +158,9 @@ void RenderMethod::Loader::finish()
 
 void RenderMethod::Loader::material_inline()
 {
-       Material::GenericLoader ldr(coll);
+       Material::GenericLoader ldr(get_collection());
        load_sub_with(ldr);
-       RefPtr<Material> mat = ldr.get_material();
-       get_collection().add(inline_base_name+".mat", mat.get());
-       obj.material = mat.release();
+       obj.material = ldr.store_object(get_collection(), inline_base_name+".mat");
        obj.set_material_textures();
 }