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 'source/blender/depsgraph')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations.cc12
1 files changed, 9 insertions, 3 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index b2eb004db27..5214fdbd246 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -1385,6 +1385,8 @@ void DepsgraphRelationBuilder::build_animation_images(ID *id)
/* TODO: can we check for existence of node for performance? */
if (BKE_image_user_id_has_animation(id)) {
OperationKey image_animation_key(id, NodeType::ANIMATION, OperationCode::IMAGE_ANIMATION);
+ ComponentKey cow_key(id, NodeType::COPY_ON_WRITE);
+ add_relation(cow_key, image_animation_key, "CoW -> Image Animation");
TimeSourceKey time_src_key;
add_relation(time_src_key, image_animation_key, "TimeSrc -> Image Animation");
}
@@ -2370,12 +2372,16 @@ void DepsgraphRelationBuilder::build_cachefile(CacheFile *cache_file)
/* Animation. */
build_animdata(&cache_file->id);
build_parameters(&cache_file->id);
- if (check_id_has_anim_component(&cache_file->id) ||
- check_id_has_driver_component(&cache_file->id)) {
- ComponentKey animation_key(&cache_file->id, NodeType::PARAMETERS);
+ if (check_id_has_anim_component(&cache_file->id)) {
+ ComponentKey animation_key(&cache_file->id, NodeType::ANIMATION);
ComponentKey datablock_key(&cache_file->id, NodeType::CACHE);
add_relation(animation_key, datablock_key, "Datablock Animation");
}
+ if (check_id_has_driver_component(&cache_file->id)) {
+ ComponentKey animation_key(&cache_file->id, NodeType::PARAMETERS);
+ ComponentKey datablock_key(&cache_file->id, NodeType::CACHE);
+ add_relation(animation_key, datablock_key, "Drivers -> Cache Eval");
+ }
/* Cache file updates */
if (cache_file->is_sequence) {