New to Lightwave 6, bone weight maps allow users to control the amount of influence a bone exerts over any given point with much more precision than was previously possible. Unfortunately this feature is poorly documented in both the LW6 manuals as well as a popular LW6 book recently released.
I have spent more hours than I care to divulge exploring bone weights and the various bone weight options. Despite all my testing I ended up coming to some incorrect conclusions. Thankfully these false conclusions were debunked by Allen Hastings himself in a period of 30 seconds or so. I hope this brief description of the several bone weight options and how to use them will prevent others from wasting so much time in the land of broken bones.
What Allen Hastings described to me was how Bone Weight Normalization works. Once you understand Weight normalization, everything else falls into place. When Weight Normalization is on, each point that is effected by one or more active maps has a sum total effection of 100%. How much BONE A influences a specific point is determined by dividing the bone weight value of BONE A by the sum of all the active bone weight values effecting that specific point.
Example: if Point01 is affected by
3 Bones A, B, and C, then:
Influence of Bone A on Point01 = weight A / (weight A + weight B + weight C)
What is the big lesson here? Indeed the biggest lesson of this page? If you are using weight maps and you have a point that you want to be partially effected by one bone, you also need to have it effected by another bone as well. A weight of any value over zero that is not counterbalanced by a weight value from another map will be normalized to 100%! (Note that with Normalization on, as far as I know, any value less than or equal to zero is treated as zero).
Example: Lets say you have a point that you want to be 10% effected by Bone A. You set up a weight map and assign a weight value of 10% to the point in question. If normalization is on, you must also have another map with a weight value of 90% influencing the point. If you don't, the 10% influence will be normalized to 100% influenced...make sense?
There are basically three states that bones with weights can be assigned, which I will refer to as State A, State B, and State C. For the purposes of this discussion, assume all bones in an object are in the same state (no mixing and matching options).

This is the default state, with "Use Weight Map Only" unchecked. In this state, the influence of a bone over any given point is governed by the point's NORMALIZED weight value as well as the point's distance from the bone.

"Use Weight Map Only" and "Weight Normalization" both checked. In this state. By checking "Use Weight Map only" you make a point's distance from a bone irrelevant. I believe this in turn makes other factors irrelevant as well (Bone Falloff, Bone Strength, Limited Range), but I haven't tested all of these). Thus the influence of a bone over any given point is governed ONLY by the point's NORMALIZED weight value.

"Use Weight Map Only" is checked and "Weight Normalization" in unchecked. In this state, weight maps are cumulative in their effect on any given point. Negative Weight values are recognized. This is shaky territory...it takes more effort to set up weights that don't weird out in this state. My only advice: make sure that the absolute value of the cumulative weights affecting any one point don't add up to more than 100%.
Weight Normalization is great. It allows you to quickly (and messily) set up bone weight values without worry. The only thing you really have to remember is, if you want one bone to only partially influence any given point, you must give that point a weight value in another active bone weight map...
Dug Stanat
Here is an email exchance between myself and Todd Zwiebel regarding weight maps in Layout 6.5b. Posted with permission.
----------------------------
Hi Dug, There's a small error in your weightmap tutorial. Values less than zero are treated as negatives and can be used to push points with a bone. They talk about this in the 6.5b pdf.
Other than that it a very useful page. Thanks for posting it.
Todd Zwiebel
----------------------------
Hello Todd Thanks for the heads up. I just did a quick test and indeed things have changed since LW 6.0b. I also searched the pdf and I'm very sorry to see that the documentation is just as confusing as ever.
Have you actually done a test of negative weights yet? What did you find? I found that now negative weights ARE active in state "A" (instead of just state "C" as stated in my tutorial, and as was true in 6.0b), but unfortunately the results are not predictable. My negative 100% was moving WAY more than 100% in the negative direction. In state "B" things seemed even weirder, I really have no clue what was happening.
Negative weights in a normalized situation are curious, indeed. How do they get normalized? from 100% to -100%? very strange and I'm not surprised the results are unpredictable. Please let me know if you've figured this one out and/or if you can confirm or contradict my test.
thanks, Dug
----------------------------
I had bad results with negative values too. I think the pdf example had them set to -10% but I wasn't looking at it when I tried my experiments. I imagine normalizing it would be like setting auto curves in photo-shop. If -10 was moved to -100 then 90% of the positive map will stay red. The question is would you accidentally set points to zero by doing it? I'm not convinced trying to put that level of accuracy into a map is worth the effort with the current toolset.
Instead of trying to fine tune the maps I control the weight normalization with by increasing the bone strength. If I was working on a leg then I would bend it to the extremes, then just tweak the strength needed. Watching the character update until it looks good saves allot time. You could probably add a small bone with negative strength for better control.
I did discover a neat trick that is not in the manual. A limited rage bone will always override any weightmaps. Sometimes you can use it correct joint rotation or virtually clear a map where it doesn't bend right. Something else to think about when you try to find new and better ways to screw up a perfectly good model.
If you do anymore test then let.
Thanks, Todd
--------------------------------
Hello Todd I agree completely about fine tuning maps. Most of my animating these days is in Messiah, which doesn't support weight maps, but when I am using weight maps, I throw them together very quickly and use multiple bones per map (1 map for right leg, one map for left leg, etc.). I will definitely stay away from negative values until I'm confident that they are well implemented.
Thanks for the tips about bone strength and limited range bones
With your permission I will post this brief exchange on the end of my weight map tutorial as an easy way to keep it up-to-date.
Thanks, dug
---------------------------------