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:
authorAlexander Gavrilov <angavrilov@gmail.com>2019-05-14 22:24:34 +0300
committerAlexander Gavrilov <angavrilov@gmail.com>2019-05-14 22:26:49 +0300
commit08a79fc88b8848888eaaa6ca9cd1187398f44045 (patch)
tree7baa2dbbdd1b049f786aad62148e69317d8abfc8 /source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc
parent26d2652d6d4287801d56dc8d41b1037750af701a (diff)
Depsgraph: dependency on B-Bone start handle end roll when inheriting it.
Specifically the dependency is on any drivers that may be affecting the RNA property of the handle bone, which currently link to segments.
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc
index fadce685d31..f8313dc854b 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc
@@ -383,7 +383,13 @@ void DepsgraphRelationBuilder::build_rig(Object *object)
bPoseChannel *prev, *next;
BKE_pchan_bbone_handles_get(pchan, &prev, &next);
if (prev) {
- OperationKey prev_key(&object->id, NodeType::BONE, prev->name, OperationCode::BONE_DONE);
+ OperationCode opcode = OperationCode::BONE_DONE;
+ /* Inheriting parent roll requires access to prev handle's B-Bone properties. */
+ if ((pchan->bone->flag & BONE_ADD_PARENT_END_ROLL) != 0 &&
+ check_pchan_has_bbone_segments(object, prev)) {
+ opcode = OperationCode::BONE_SEGMENTS;
+ }
+ OperationKey prev_key(&object->id, NodeType::BONE, prev->name, opcode);
add_relation(prev_key, bone_segments_key, "Prev Handle -> B-Bone Segments");
}
if (next) {