diff options
author | Germano Cavalcante <germano.costa@ig.com.br> | 2020-02-17 19:03:58 +0300 |
---|---|---|
committer | Germano Cavalcante <germano.costa@ig.com.br> | 2020-02-17 19:03:58 +0300 |
commit | 847bb4c4e0c35a4f617d75a700f79932e310c6db (patch) | |
tree | dafe97420e1e13d6c6952f0d9400022bbe2eedd7 /source/blender | |
parent | 4353bc919030a6eea5e0dc41247f452bea226d16 (diff) |
Fix T73853: Redo does't work properly with NLA "Move" transform mode
The orientation matrix when re-doing some transform operations was negated.
Thanks @lichtwerk for pointing out the problem.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/transform/transform_generics.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c index 9a524351982..d39ea6f14d7 100644 --- a/source/blender/editors/transform/transform_generics.c +++ b/source/blender/editors/transform/transform_generics.c @@ -1629,11 +1629,11 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve /* When using redo, don't use the custom constraint matrix * if the user selects a different orientation. */ (RNA_enum_get(op->ptr, "orient_type") == RNA_enum_get(op->ptr, "orient_matrix_type")))) { - RNA_property_float_get_array(op->ptr, prop, &t->spacemtx[0][0]); + RNA_property_float_get_array(op->ptr, prop, &t->orient_matrix[0][0]); + copy_m3_m3(t->spacemtx, t->orient_matrix); + negate_m3(t->spacemtx); /* Some transform modes use this to operate on an axis. */ t->orient_matrix_is_set = true; - copy_m3_m3(t->orient_matrix, t->spacemtx); - t->orient_matrix_is_set = true; t->orientation.user = V3D_ORIENT_CUSTOM_MATRIX; t->orientation.custom = 0; if (t->flag & T_MODAL) { |