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
path: root/source
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2019-05-23 17:57:39 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2019-05-23 17:57:39 +0300
commitfaf48c0f6473df6798cdc1c672a7e40110cc8064 (patch)
tree40b9be01cd80ee25bbbd432ff57bec4ae85e6b7e /source
parent08dd51a7bbddc443fd8ae865b9d160a739a532d0 (diff)
Depsgraph: Ensure DOF object is always in the graph
Related in T60961. Unfortunately, doesn't fix it yet. Needs deeper investigation.
Diffstat (limited to 'source')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes.cc3
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations.cc1
2 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index cc9e1d2a9da..93e5dd14ae0 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -1312,6 +1312,9 @@ void DepsgraphNodeBuilder::build_camera(Camera *camera)
}
build_animdata(&camera->id);
build_parameters(&camera->id);
+ if (camera->dof.focus_object != NULL) {
+ build_object(-1, camera->dof.focus_object, DEG_ID_LINKED_INDIRECTLY, false);
+ }
}
void DepsgraphNodeBuilder::build_light(Light *lamp)
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index 79f28973dc3..dcdd4e5cefb 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -2076,6 +2076,7 @@ void DepsgraphRelationBuilder::build_camera(Camera *camera)
build_animdata(&camera->id);
build_parameters(&camera->id);
if (camera->dof.focus_object != NULL) {
+ build_object(NULL, camera->dof.focus_object);
ComponentKey camera_parameters_key(&camera->id, NodeType::PARAMETERS);
ComponentKey dof_ob_key(&camera->dof.focus_object->id, NodeType::TRANSFORM);
add_relation(dof_ob_key, camera_parameters_key, "Camera DOF");