diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-06-14 16:55:51 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-06-14 16:55:51 +0300 |
commit | 87b2444270403b9a826f564ddf58a310dcab2324 (patch) | |
tree | 6db02468dcb3f42338914d62f0dba9e6f73c6bf1 /source/blender/collada/MeshImporter.cpp | |
parent | 0626de2033c45c1973f5233ab137098db4b38be3 (diff) | |
parent | fd19069999e3655206ccf21dc851801a325dea5d (diff) |
Merge branch 'master' into blender2.8
Conflicts:
source/blender/collada/AnimationExporter.cpp
source/blender/collada/AnimationExporter.h
source/blender/collada/ArmatureImporter.cpp
source/blender/collada/ArmatureImporter.h
source/blender/collada/ControllerExporter.cpp
source/blender/collada/ControllerExporter.h
source/blender/collada/DocumentExporter.cpp
source/blender/collada/DocumentImporter.cpp
source/blender/collada/GeometryExporter.cpp
source/blender/collada/GeometryExporter.h
source/blender/collada/MeshImporter.cpp
source/blender/collada/MeshImporter.h
source/blender/collada/SkinInfo.cpp
source/blender/collada/SkinInfo.h
source/blender/collada/collada_utils.cpp
source/blender/collada/collada_utils.h
Diffstat (limited to 'source/blender/collada/MeshImporter.cpp')
-rw-r--r-- | source/blender/collada/MeshImporter.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/source/blender/collada/MeshImporter.cpp b/source/blender/collada/MeshImporter.cpp index e95f8ed0888..4a8fca6d3cd 100644 --- a/source/blender/collada/MeshImporter.cpp +++ b/source/blender/collada/MeshImporter.cpp @@ -207,8 +207,9 @@ void VCOLDataWrapper::get_vcol(int v_index, MLoopCol *mloopcol) } -MeshImporter::MeshImporter(UnitConverter *unitconv, ArmatureImporter *arm, Scene *sce, ViewLayer *view_layer): +MeshImporter::MeshImporter(UnitConverter *unitconv, ArmatureImporter *arm, Main *bmain, Scene *sce, ViewLayer *view_layer): unitconverter(unitconv), + m_bmain(bmain), scene(sce), view_layer(view_layer), armature_importer(arm) { @@ -1035,7 +1036,7 @@ void MeshImporter::assign_material_to_geom( // Attention! This temporaly assigns material to object on purpose! // See note above. ob->actcol=0; - assign_material(G.main, ob, ma, mat_index + 1, BKE_MAT_ASSIGN_OBJECT); + assign_material(m_bmain, ob, ma, mat_index + 1, BKE_MAT_ASSIGN_OBJECT); MaterialIdPrimitiveArrayMap& mat_prim_map = geom_uid_mat_mapping_map[*geom_uid]; COLLADAFW::MaterialId mat_id = cmaterial.getMaterialId(); @@ -1090,7 +1091,7 @@ Object *MeshImporter::create_mesh_object(COLLADAFW::Node *node, COLLADAFW::Insta const char *name = (id.length()) ? id.c_str() : NULL; // add object - Object *ob = bc_add_object(scene, view_layer, OB_MESH, name); + Object *ob = bc_add_object(m_bmain, scene, view_layer, OB_MESH, name); bc_set_mark(ob); // used later for material assignement optimization @@ -1102,11 +1103,11 @@ Object *MeshImporter::create_mesh_object(COLLADAFW::Node *node, COLLADAFW::Insta Mesh *old_mesh = (Mesh *)ob->data; Mesh *new_mesh = uid_mesh_map[*geom_uid]; - BKE_mesh_assign_object(G.main, ob, new_mesh); + BKE_mesh_assign_object(m_bmain, ob, new_mesh); BKE_mesh_calc_normals(new_mesh); id_us_plus(&old_mesh->id); /* Because BKE_mesh_assign_object would have already decreased it... */ - BKE_libblock_free_us(G.main, old_mesh); + BKE_libblock_free_us(m_bmain, old_mesh); COLLADAFW::MaterialBindingArray& mat_array = geom->getMaterialBindings(); @@ -1145,7 +1146,7 @@ bool MeshImporter::write_geometry(const COLLADAFW::Geometry *geom) } const std::string& str_geom_id = mesh->getName().size() ? mesh->getName() : mesh->getOriginalId(); - Mesh *me = BKE_mesh_add(G.main, (char *)str_geom_id.c_str()); + Mesh *me = BKE_mesh_add(m_bmain, (char *)str_geom_id.c_str()); id_us_min(&me->id); // is already 1 here, but will be set later in BKE_mesh_assign_object // store the Mesh pointer to link it later with an Object |