diff options
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_nodes.cc | 2 | ||||
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc index b05d7750b9a..a397b48e19c 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc @@ -442,7 +442,7 @@ void DepsgraphNodeBuilder::build_object(Scene *scene, Base *base, Object *ob) } case OB_ARMATURE: /* Pose */ - if (ob->id.lib != NULL && ob->proxy_from != NULL) { + if (ID_IS_LINKED_DATABLOCK(ob) && ob->proxy_from != NULL) { build_proxy_rig(ob); } else { diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index 44445453d01..1662dfcea93 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -271,6 +271,7 @@ void DepsgraphRelationBuilder::build_scene(Main *bmain, Scene *scene) /* object that this is a proxy for */ if (ob->proxy) { + ob->proxy->proxy_from = ob; build_object(bmain, scene, ob->proxy); /* TODO(sergey): This is an inverted relation, matches old depsgraph * behavior and need to be investigated if it still need to be inverted. @@ -433,9 +434,8 @@ void DepsgraphRelationBuilder::build_object(Main *bmain, Scene *scene, Object *o break; } - case OB_ARMATURE: /* Pose */ - if (ob->id.lib != NULL && ob->proxy_from != NULL) { + if (ID_IS_LINKED_DATABLOCK(ob) && ob->proxy_from != NULL) { build_proxy_rig(ob); } else { |