[Bf-committers] Matrix "brain teaser"

Roland Hess rolandh at reed-witting.com
Fri Jul 21 15:03:00 CEST 2006


While having BlenderPeople build NLA animation, and thus putting  
MatchBone into strenuous use for the first time, I ran into a problem  
I had not noticed before. Blendin/Blendout is not working properly in  
certain cases, and it's because I was making some bad assumptions.  
Rather than burden (and confuse) you with the details of MatchBone,  
etc., I'll just present the problem as it's currently broken down  
(all matrices are 4x4s)

your givens:
ObMatrixA * BoneMatrixA == ObMatrixB * BoneMatrixB
ObMatrixB * inverse(ObMatrixA) == BoneMatrixB * inverse(BoneMatrixA)

Now, supposing that BoneMatrixX is a linear interpolation between  
BoneMatrixA and BoneMatrixB, find ObMatrixX such that ObMatrixX *  
BoneMatrixX == ObMatrixA * BoneMatrixA == ObMatrixB * BoneMatrixB

The constraint is that you do not have access to the values of  
BoneMatrixA, BoneMatrixB, or BoneMatrixX.

Is it even possible to correctly find ObMatrixX under these conditions?

If so, how? Any matrix math wizards please feel free to chime in.

Roland Hess - harkyman
IT Manager/Digital Prepress
Reed & Witting Company
Pittsburgh, PA



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.blender.org/pipermail/bf-committers/attachments/20060721/c974c31e/attachment.html


More information about the Bf-committers mailing list