diff --git a/openpype/hosts/blender/plugins/load/load_model.py b/openpype/hosts/blender/plugins/load/load_model.py index 37618b164d..3087edb573 100644 --- a/openpype/hosts/blender/plugins/load/load_model.py +++ b/openpype/hosts/blender/plugins/load/load_model.py @@ -78,13 +78,13 @@ class BlendModelLoader(plugin.AssetLoader): for obj in objects: local_obj = plugin.prepare_data(obj, group_name) - if obj.type != 'EMPTY': + if local_obj.type != 'EMPTY': plugin.prepare_data(local_obj.data, group_name) for material_slot in local_obj.material_slots: plugin.prepare_data(material_slot.material, group_name) - if not obj.get(AVALON_PROPERTY): + if not local_obj.get(AVALON_PROPERTY): local_obj[AVALON_PROPERTY] = dict() avalon_info = local_obj[AVALON_PROPERTY] @@ -92,6 +92,8 @@ class BlendModelLoader(plugin.AssetLoader): objects.reverse() + bpy.data.orphans_purge(do_local_ids = False) + bpy.ops.object.select_all(action='DESELECT') return objects diff --git a/openpype/hosts/blender/plugins/load/load_rig.py b/openpype/hosts/blender/plugins/load/load_rig.py index 3909a1b4aa..e57b97972b 100644 --- a/openpype/hosts/blender/plugins/load/load_rig.py +++ b/openpype/hosts/blender/plugins/load/load_rig.py @@ -91,7 +91,7 @@ class BlendRigLoader(plugin.AssetLoader): for obj in objects: local_obj = plugin.prepare_data(obj, group_name) - if obj.type == 'MESH': + if local_obj.type == 'MESH': plugin.prepare_data(local_obj.data, group_name) if obj != local_obj: @@ -102,7 +102,7 @@ class BlendRigLoader(plugin.AssetLoader): for material_slot in local_obj.material_slots: if material_slot.material: plugin.prepare_data(material_slot.material, group_name) - elif obj.type == 'ARMATURE': + elif local_obj.type == 'ARMATURE': plugin.prepare_data(local_obj.data, group_name) if action is not None: @@ -118,7 +118,7 @@ class BlendRigLoader(plugin.AssetLoader): for t in v.targets: t.id = local_obj - if not obj.get(AVALON_PROPERTY): + if not local_obj.get(AVALON_PROPERTY): local_obj[AVALON_PROPERTY] = dict() avalon_info = local_obj[AVALON_PROPERTY] @@ -126,6 +126,8 @@ class BlendRigLoader(plugin.AssetLoader): objects.reverse() + bpy.data.orphans_purge(do_local_ids = False) + bpy.ops.object.select_all(action='DESELECT') return objects