Assigning weights to bones.

Blitz3D Forums/Blitz3D Programming/Assigning weights to bones.

QuickSilva(Posted 2004) [#1]
OK, I know that each and every model is going to be different but are there any basic guide lines as to how I should be setting my bones weights for my models, say for example a human model. How would I set up the weights around the knees and elbows? Should the weight be at strength 1 around the joint and then die off over the length of the limb? Any help would be great as after having had a little play around in CFX I have found it to be a bit more difficult than I first thought. An example would be even better, or a simple diagram :)

Jason.


Beaker(Posted 2004) [#2]
I read somewhere on this forum (by a top modeller) that you can set most verts to 1.0 for 1 bone. And then the ones around the joints (back of knees etc) to 0.5 for 2 bones. And that should be enough.


jhocking(Posted 2004) [#3]
As MasterBeaker explained, you pretty much got it backwards. The weights are at 1 (or at least higher) in the middle of limbs, away from joints, and lowest at joints.

You can get more elaborate with up to 4 bones per vertex. But that can get computationally expensive and anyway the biggest visual improvement is going from one bone to 2. You would want to be a little more elaborate than MasterBeaker described however since you can set weights to any value between 0 and 1. So in the middle of a joint weight vertices .5/.5 between the two bones of the joint, but right on either side of the joint do like .75/.25, with the higher weight on the bone the vertices are closer to. In other words, for an elbow the weights would be:

1/0 -- .75/.25 -- .5/.5 -- .25/.75 -- 0/1


QuickSilva(Posted 2004) [#4]
Thanks for the advice, I`ll go and try it out :)

Jason.


QuickSilva(Posted 2004) [#5]
OK I`ve tried that in CFX on an elbow joint and the elbow stays very rigid and bends unrealistically. I really need to see an example of this sort of thing in action as I`m obviously doing something wrong. My mesh has ample vertices around the joints so that can`t be the problem. Has anybody put a simple test object together yet for people to learn from? How about you JHocking, have you managed to rustle anything up yet?

Jason.