diff options
author | Alexander Gavrilov <angavrilov@gmail.com> | 2019-05-14 12:09:02 +0300 |
---|---|---|
committer | Alexander Gavrilov <angavrilov@gmail.com> | 2019-05-14 12:39:36 +0300 |
commit | 02e3bf22ab6059db03c856f1d34b27a24ef8ec31 (patch) | |
tree | ebb56cb7d216afaf6eb141a29c6587170ca3eed0 /source/blender/depsgraph | |
parent | be967c0b3c7ed898a061519b86aec1df7aa2c088 (diff) |
Depsgraph: detect bbone_segments drivers from Object animation data.
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder.cc b/source/blender/depsgraph/intern/builder/deg_builder.cc index 71f482e8630..36c6d246097 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder.cc @@ -114,7 +114,10 @@ bool DepsgraphBuilder::check_pchan_has_bbone(Object *object, const bPoseChannel } bArmature *armature = static_cast<bArmature *>(object->data); AnimatedPropertyID property_id(&armature->id, &RNA_Bone, pchan->bone, "bbone_segments"); - return cache_->isPropertyAnimated(&armature->id, property_id); + /* Check both Object and Armature animation data, because drivers modifying Armature + * state could easily be created in the Object AnimData. */ + return cache_->isPropertyAnimated(&object->id, property_id) || + cache_->isPropertyAnimated(&armature->id, property_id); } bool DepsgraphBuilder::check_pchan_has_bbone_segments(Object *object, const bPoseChannel *pchan) |