diff options
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc | 8 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_armature.c | 5 |
2 files changed, 10 insertions, 3 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) { diff --git a/source/blender/makesrna/intern/rna_armature.c b/source/blender/makesrna/intern/rna_armature.c index ffd28b4eb76..0eec5973ab0 100644 --- a/source/blender/makesrna/intern/rna_armature.c +++ b/source/blender/makesrna/intern/rna_armature.c @@ -635,9 +635,10 @@ void rna_def_bone_curved_common(StructRNA *srna, bool is_posebone) if (is_posebone == false) { prop = RNA_def_property(srna, "use_endroll_as_inroll", PROP_BOOLEAN, PROP_NONE); RNA_def_property_ui_text( - prop, "Inherit End Roll", "Use Roll Out of parent bone as Roll In of its children"); + prop, "Inherit End Roll", "Add Roll Out of the Start Handle bone to the Roll In value"); RNA_def_property_boolean_sdna(prop, NULL, "flag", BONE_ADD_PARENT_END_ROLL); - RNA_def_property_update(prop, 0, "rna_Armature_update_data"); + RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); + RNA_def_property_update(prop, 0, "rna_Armature_dependency_update"); } /* Curve X/Y Offsets */ |