[Bf-python] formulas for Armature deformation

Jacek Popławski jpopl at interia.pl
Fri Jun 6 11:08:29 CEST 2003


I was trying to imagine what will be needed in character animation exporter. I
am interested how to display animation in 3D engine, so I need to know formulas
to calculate mesh after armature deformation.

I understand that vertex has it's "static" position in mesh. Vertices are in
any number of vertex groups, and have weights. Bones have their position and
orientation.

I think to calculate final position one need to use loop like:

position=vertex.StaticPosition;
for(i=0;i<ngroups;i++)
{
 position+=bones[i].influence*vertex.weight[i];
}

1) Am I right? Or is forumula completly different?
2) How to calculate influence? Is it just position (or change from initial
position) of some point laying on bone?
3) What data will be available in Armature module? Will orientation of bones be
in world space or parent space?

-- 
Free Software - find interesting programs and change them
NetHack - meet interesting creatures, kill them and eat their bodies
Usenet - meet interesting people from all over the world and flame them
Decopter - unrealistic helicopter simulator, get it from http://decopter.sf.net



More information about the Bf-python mailing list