Blender Git Commit Log

Git Commits -> Revision 5f8282b

Revision 5f8282b by Alexander Gavrilov
January 6, 2021, 12:05 (GMT)
Armature: fix bad B-Bone deformation blending with Preserve Volume.

The double quaternion blending method in addition to the deformation
matrix of each bone requires their rest matrices. For ordinary bones
this literally should use the bone rest matrix without any ambiguity.

However, it was also using the bone rest matrix for all of its
B-Bone segments, which is incorrect and causes strange deformation
in some cases involving extreme non-uniform scale, especially
at boundaries between different B-Bones.

This changes both the Armature modifier and the Armature constraint
to use the actual segment rest matrices. Unlike bones, these can have
scale even in rest pose, so normalization is required.

Commit Details:

Full Hash: 5f8282b35fbfd667eee5a0814f9cb260929964ad
Parent Commit: 9b3cf4d
Lines Changed: +26, -9

2 Modified Paths:

/source/blender/blenkernel/intern/armature.c (+5, -1) (Diff)
/source/blender/blenkernel/intern/constraint.c (+21, -8) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021