diff options
author | Cody Winchester <CodyWinch> | 2020-03-29 10:56:59 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-03-29 10:58:37 +0300 |
commit | e8dd6128b58b138b0163e6376a6e8a54cc6e5ab1 (patch) | |
tree | a2e59a7f7c8b07104207bbe797dbf6ae30b2de2a /source/blender | |
parent | b9faf53182965e19ba65af8de758c9f9639cdd84 (diff) |
Fix warp modifier using pose matrix without object matrix applied
Error in recent patch D6820
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/modifiers/intern/MOD_warp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_warp.c b/source/blender/modifiers/intern/MOD_warp.c index 3157dddd8fc..b8db14f610a 100644 --- a/source/blender/modifiers/intern/MOD_warp.c +++ b/source/blender/modifiers/intern/MOD_warp.c @@ -90,7 +90,9 @@ static void matrix_from_obj_pchan(float mat[4][4], float obinv[4][4], Object *ob { bPoseChannel *pchan = BKE_pose_channel_find_name(ob->pose, bonename); if (pchan) { - mul_m4_m4m4(mat, obinv, pchan->pose_mat); + float mat_bone_world[4][4]; + mul_m4_m4m4(mat_bone_world, ob->obmat, pchan->pose_mat); + mul_m4_m4m4(mat, obinv, mat_bone_world); } else { mul_m4_m4m4(mat, obinv, ob->obmat); |