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:
Diffstat (limited to 'intern/cycles/blender/object.cpp')
-rw-r--r--intern/cycles/blender/object.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/intern/cycles/blender/object.cpp b/intern/cycles/blender/object.cpp
index 9919b9d1836..3800ea0ecd2 100644
--- a/intern/cycles/blender/object.cpp
+++ b/intern/cycles/blender/object.cpp
@@ -161,6 +161,11 @@ Object *BlenderSync::sync_object(BL::Depsgraph &b_depsgraph,
if (is_instance) {
persistent_id_array = b_instance.persistent_id();
persistent_id = persistent_id_array.data;
+ if (!b_ob_info.is_real_object_data()) {
+ /* Remember which object data the geometry is coming from, so that we can sync it when the
+ * object has changed. */
+ instance_geometries_by_object[b_ob_info.real_object.ptr.data].insert(b_ob_info.object_data);
+ }
}
/* light is handled separately */
@@ -560,6 +565,7 @@ void BlenderSync::sync_objects(BL::Depsgraph &b_depsgraph,
else {
geometry_motion_synced.clear();
}
+ instance_geometries_by_object.clear();
/* initialize culling */
BlenderObjectCulling culling(scene, b_scene);