Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/blender/blenkernel/BKE_object.h2
-rw-r--r--source/blender/blenkernel/intern/object.c11
-rw-r--r--source/blender/blenloader/intern/readfile.c9
-rw-r--r--source/blender/blenloader/intern/versioning_280.c7
4 files changed, 9 insertions, 20 deletions
diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h
index 78bc03413e4..fdd61580d9e 100644
--- a/source/blender/blenkernel/BKE_object.h
+++ b/source/blender/blenkernel/BKE_object.h
@@ -388,8 +388,6 @@ bool BKE_object_modifier_update_subframe(struct Depsgraph *depsgraph,
float frame,
int type);
-void BKE_object_type_set_empty_for_versioning(struct Object *ob);
-
bool BKE_object_empty_image_frame_is_visible_in_view3d(const struct Object *ob,
const struct RegionView3D *rv3d);
bool BKE_object_empty_image_data_is_visible_in_view3d(const struct Object *ob,
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index ce1316480a7..b673c882e21 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -4453,17 +4453,6 @@ bool BKE_object_modifier_update_subframe(Depsgraph *depsgraph,
return false;
}
-void BKE_object_type_set_empty_for_versioning(Object *ob)
-{
- ob->type = OB_EMPTY;
- ob->data = NULL;
- if (ob->pose) {
- BKE_pose_free_ex(ob->pose, false);
- ob->pose = NULL;
- }
- ob->mode = OB_MODE_OBJECT;
-}
-
/* Updates select_id of all objects in the given bmain. */
void BKE_object_update_select_id(struct Main *bmain)
{
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index d110af60a83..32f0d35cd53 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -5220,6 +5220,15 @@ static void lib_link_object(FileData *fd, Main *main)
ob->instance_collection = newlibadr_us(fd, ob->id.lib, ob->instance_collection);
}
else {
+ if (ob->instance_collection != NULL) {
+ ID *id = newlibadr(fd, ob->id.lib, ob->instance_collection);
+ blo_reportf_wrap(fd->reports,
+ RPT_WARNING,
+ TIP_("Non-Empty object '%s' cannot duplicate collection '%s' "
+ "anymore in Blender 2.80, removed instancing"),
+ ob->id.name + 2,
+ id->name + 2);
+ }
ob->instance_collection = NULL;
ob->transflag &= ~OB_DUPLICOLLECTION;
}
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index c4436cc8128..152cde0c0dc 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -2742,13 +2742,6 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *bmain)
for (Camera *ca = bmain->cameras.first; ca; ca = ca->id.next) {
ca->drawsize *= 2.0f;
}
- for (Object *ob = bmain->objects.first; ob; ob = ob->id.next) {
- if (ob->type != OB_EMPTY) {
- if (UNLIKELY(ob->transflag & OB_DUPLICOLLECTION)) {
- BKE_object_type_set_empty_for_versioning(ob);
- }
- }
- }
/* Grease pencil primitive curve */
if (!DNA_struct_elem_find(