diff options
author | Sergey Sharybin <sergey@blender.org> | 2021-11-29 17:56:58 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey@blender.org> | 2021-11-29 18:45:31 +0300 |
commit | dae9917915c4e0dc2a7b382cbed756538439d59b (patch) | |
tree | 21e7f8a63e61255782404810946608bf5fec79e9 | |
parent | 2206b6b9a04777b7325c8f30a49db23bc9a61317 (diff) |
Fix T93384: Objects with Constraints to curves have wrong locations on file load
Regression since 3.93 caused by 752c6d668bcb.
Follow the code from 2.93 which was always leaving curve modifiers
evaluation with a valid and clean state of the bounding box.
This is also what was proposed and agreed on in the following
design task: T92206: Bounding Box: compute during depsgraph evaluation
Tested with files from T90808 and T93384.
For the 3.0 going with the safest and minimal change. The rest of
the bounding box un-entanglement is to happen outside of the stable
branch.
Thanks The patch is based on the code from Philipp Oeser and
investigation by Germano Cavalcante and Dr. Sybren A. Stüvel,
thanks!
Differential Revision: https://developer.blender.org/D13409
-rw-r--r-- | source/blender/blenkernel/intern/displist.cc | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/displist.cc b/source/blender/blenkernel/intern/displist.cc index f511bb2b65e..73aea944665 100644 --- a/source/blender/blenkernel/intern/displist.cc +++ b/source/blender/blenkernel/intern/displist.cc @@ -1526,9 +1526,7 @@ void BKE_displist_make_curveTypes(Depsgraph *depsgraph, ob->runtime.geometry_set_eval = new GeometrySet(std::move(geometry)); } - if (ob->runtime.bb) { - ob->runtime.bb->flag |= BOUNDBOX_DIRTY; - } + BKE_object_boundbox_calc_from_evaluated_geometry(ob); } void BKE_displist_minmax(const ListBase *dispbase, float min[3], float max[3]) |