diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2017-05-05 10:47:35 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2017-05-05 10:56:17 +0300 |
commit | fbf4b2f17a7bf43707125a86f5debe580e3008e0 (patch) | |
tree | 6ed35dd7b69d598646555a3ff0ea82856b3bbe6b /source/blender/blenkernel | |
parent | 839bf119c1a774b47583db098ed6fd1fc4bb34c6 (diff) |
Add check (error message + assert) that pose is valid in armature evaluation.
Not sure how this happens, but in some cases we can evaluate
deformations of an armature which pose is not valid, at least put a
warning here to help identifying the issue quickly.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/intern/armature.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/armature.c b/source/blender/blenkernel/intern/armature.c index 02cc31e5977..1ee71c8448c 100644 --- a/source/blender/blenkernel/intern/armature.c +++ b/source/blender/blenkernel/intern/armature.c @@ -982,6 +982,11 @@ void armature_deform_verts(Object *armOb, Object *target, DerivedMesh *dm, float return; } + if ((armOb->pose->flag & POSE_RECALC) != 0) { + printf("ERROR! Trying to evaluate influence of armature '%s' which needs Pose recalc!", armOb->id.name); + BLI_assert(0); + } + invert_m4_m4(obinv, target->obmat); copy_m4_m4(premat, target->obmat); mul_m4_m4m4(postmat, obinv, armOb->obmat); |