Commit: ad42c358f8baad069b48c6ee65af252826762a2c
Author: Sergey Sharybin
Date:   Thu Jun 21 15:41:51 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBad42c358f8baad069b48c6ee65af252826762a2c

Depsgraph: Walk into dupli_group object

That will help with cases when dupli_group object is not linked
directly to the scene.

===================================================================

M       source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
M       source/blender/depsgraph/intern/builder/deg_builder_relations.cc

===================================================================

diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc 
b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index 9b0c3354c47..127a3f45929 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -541,6 +541,9 @@ void DepsgraphNodeBuilder::build_object(int base_index,
        if (object->proxy_from) {
                build_object(-1, object->proxy_from, DEG_ID_LINKED_INDIRECTLY);
        }
+       if (object->proxy_group) {
+               build_object(-1, object->proxy_group, DEG_ID_LINKED_INDIRECTLY);
+       }
        /* Object dupligroup. */
        if (object->dup_group != NULL) {
                build_collection(DEG_COLLECTION_OWNER_OBJECT, 
object->dup_group);
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc 
b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index d0b699d34e4..97e2b0905d7 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -596,7 +596,9 @@ void DepsgraphRelationBuilder::build_object(Base *base, 
Object *object)
                ComponentKey proxy_transform_key(&object->id, 
DEG_NODE_TYPE_TRANSFORM);
                add_relation(ob_transform_key, proxy_transform_key, "Proxy 
Transform");
        }
-
+       if (object->proxy_group) {
+               build_object(NULL, object->proxy_group);
+       }
        /* Object dupligroup. */
        if (object->dup_group != NULL) {
                build_collection(DEG_COLLECTION_OWNER_OBJECT, object, 
object->dup_group);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to