diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2018-05-23 20:33:25 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2018-05-23 21:05:17 +0300 |
commit | 401e975c617973796a16ea73f2f96924c6bfad32 (patch) | |
tree | a91b42a507dd7e8fd8d2ca1fdeccb4ac0cfb14a2 /source/blender/depsgraph | |
parent | 933a0835875c71dc177227c87e8bbe281f0a7f55 (diff) |
Fix curve not updating when scaling Bevel Object
Note the relationship we need is from the geometry/object to the curve data,
not the curve object.
Related to T55167, though when copy-on-write is enabled, we still get a crash.
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index 10edc17e94e..900d9cfd1cf 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -1792,9 +1792,12 @@ void DepsgraphRelationBuilder::build_obdata_geom(Object *object) /* curve's dependencies */ // XXX: these needs geom data, but where is geom stored? if (cu->bevobj) { - ComponentKey bevob_key(&cu->bevobj->id, DEG_NODE_TYPE_GEOMETRY); + ComponentKey bevob_geom_key(&cu->bevobj->id, DEG_NODE_TYPE_GEOMETRY); + add_relation(bevob_geom_key, obdata_geom_key, "Curve Bevel Geometry"); + /* We only need scale, but we can't tag individual TRANSFORM components. */ + ComponentKey bevob_key(&cu->bevobj->id, DEG_NODE_TYPE_TRANSFORM); + add_relation(bevob_key, obdata_geom_key, "Curve Bevel Scale"); build_object(NULL, cu->bevobj); - add_relation(bevob_key, geom_key, "Curve Bevel"); } if (cu->taperobj) { ComponentKey taperob_key(&cu->taperobj->id, DEG_NODE_TYPE_GEOMETRY); |