diff options
author | Germano Cavalcante <germano.costa@ig.com.br> | 2021-07-19 16:17:38 +0300 |
---|---|---|
committer | Germano Cavalcante <germano.costa@ig.com.br> | 2021-07-19 16:17:38 +0300 |
commit | ceb612a79c7c49967fe6976c261ad3f9fa47adfb (patch) | |
tree | e72aad0900aaa9d24965a51282104b1a896a425f /source/blender/editors | |
parent | 62a2faa7ef39130446716d7a06215cd1df1eb2ac (diff) |
Revert "Depsgraph: Implement 'ID_RECALC_GEOMETRY_DEFORM'"
This reverts commits
bfa3dc91b75407b063f2ac991b176d98c050f92d,
52b94049f2a71a74f52247f83657cf3a5c8712b4,
ae379714e4f1eca74f5f77532a6e959f29445236,
a770faa811ee62837eb540b0bd83ca0770f16663,
4ed029fc02b022cb5ff28ed3ce70992c450d2be5,
101a493ab556c6597ac91fba204059be67b35990 and
62a2faa7ef39130446716d7a06215cd1df1eb2ac.
And fixes T89955.
Changing the dependency graph is a can of worms and the result is
a kind of unpredictable.
A different solution will be planned.
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/transform/transform_convert_mesh.c | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/source/blender/editors/transform/transform_convert_mesh.c b/source/blender/editors/transform/transform_convert_mesh.c index 383f9870714..c1ee6edfef6 100644 --- a/source/blender/editors/transform/transform_convert_mesh.c +++ b/source/blender/editors/transform/transform_convert_mesh.c @@ -2067,27 +2067,6 @@ static void tc_mesh_transdata_mirror_apply(TransDataContainer *tc) } } -static bool tc_mesh_is_deform_only_update(TransInfo *t, TransDataContainer *tc) -{ - if (tc->custom.type.data && - ((struct TransCustomDataMesh *)tc->custom.type.data)->cd_layer_correct) { - return false; - } - - Mesh *me_eval = (Mesh *)DEG_get_evaluated_id(t->depsgraph, (ID *)tc->obedit->data); - Mesh *mesh_eval_cage = me_eval->edit_mesh->mesh_eval_cage; - Mesh *mesh_eval_final = me_eval->edit_mesh->mesh_eval_final; - if (mesh_eval_cage && !mesh_eval_cage->runtime.is_original) { - return false; - } - if (mesh_eval_final && mesh_eval_final != mesh_eval_cage && - !mesh_eval_final->runtime.is_original) { - return false; - } - - return me_eval->runtime.deformed_only; -} - void recalcData_mesh(TransInfo *t) { bool is_canceling = t->state == TRANS_CANCEL; @@ -2115,10 +2094,7 @@ void recalcData_mesh(TransInfo *t) tc_mesh_partial_types_calc(t, &partial_state); FOREACH_TRANS_DATA_CONTAINER (t, tc) { - const bool is_deform_only = tc_mesh_is_deform_only_update(t, tc); - - DEG_id_tag_update(tc->obedit->data, - is_deform_only ? ID_RECALC_GEOMETRY_DEFORM : ID_RECALC_GEOMETRY); + DEG_id_tag_update(tc->obedit->data, ID_RECALC_GEOMETRY); tc_mesh_partial_update(t, tc, &partial_state); } |