View Full Version : Painting Weights - why is it bad to subtract?

 BMunchausen09-22-2005, 07:23 PMHi all. I've read through the main sticky on this subject but I'm afraid I'm just not tech-savvy enough to understand most of what was being discussed on it and I'm such a Maya beginner, I could use help with a few questions. Firstly, how do you select certain vertices to paint weight on as opposed to joints? Secondly, why is it a bad thing to subtract weight rather than always adding? Thing is, I'm doing a tutorial that doesn't go into this too much - it just says "paint here, paint there" and I'm getting results I don't understand. I guess I'm thinking about the paint weights tool as if it works like the brushes and erasers in Photoshop do and I'm gathering that's totally wrong because when I choose one joint and try to "erase" the influence from areas I don't want by using a brush with a value of zero, then click on another joint and paint that and then go back to my original joint, there'll be all sorts of new influence (as evidenced by the gray to white coloration) there again even though I thought I got rid of it. What's happening here? Is it that there's a constant amount of weight that can't truly be altered, but can only be moved around? I'm pretty baffled and I hope someone can shed some light on this for me. Thanks as always for your help.
0-1com
09-22-2005, 07:56 PM
hi. Please think about that - each vertex has many joints assigned and sum of all weights is 1. If you paint to decrease weight of some joint, than weight might be also 1 at all, but if you decrease weight - some of weight would be avtomatically add to what joint? How maya knows what joint do you prefer? I don't know this, and I use "hold" to show maya to where I prefer put my weight that I decrease from any joint.

If you are russian - go to my site www.mayascripts.cgtalk.ru (http://www.mayascripts.cgtalk.ru), there is many scripts for skining.

BMunchausen
09-22-2005, 10:36 PM
hehe...thanks but I'm not Russian. :)

I'm not sure I even understand what you're saying here. Is that a question or an answer to what I was asking? Are you saying that each joint has a value of 1 max, and that all the verts near it are assigned varying percentages of that "1" value?

09-23-2005, 12:00 AM
If you subtract weights, how will it know what to give that weight to? Maya's set up so that every vertex HAS to be assigned to a joint (or split its weighting between several joints). It is impossible to have a vertex with a total skin weight less than 1. Because of that, you can't just subtract and put the skin weight to zero. Maya's system doesn't allow for that -- and neither does any other, so far as I know. Would be very weird to be moving joints and have some stray vertices not moving at all.

Because of that, if you subtract, Maya would have to figure out which joints to reassign the subtracted weighting to. To maintain a highly specified, personalized weighting, it is much better to tell the program what you want, as opposed to what you don't want.

BMunchausen
09-23-2005, 03:35 AM
ah, I see. I think a little glimmer of understanding is starting to happen. :)

The fact that every vertex in the model has to be assigned to a joint might explain why the rest of her body moves when I bend her arm. Are you saying that if the arm's the only thing that has bones, that her whole body is being forced to relate to those joints since there are no others?

How do you select specific vertices though, to paint? I apologize if that's a terribly stupid question, but the tutorial said to paint a specific set of verts a certain way. Am I supposed to select those, or is that unnecessary? Maybe the author just means "paint over the mesh in this area"?

I guess I got confused by reading stuff other people had posted about component mode. When I tried to go to vertex mode, it seemed to turn off the paint weights tool and vice versa.

revilo3D
09-25-2005, 12:34 PM
well i think( dont shoot me if im wrong) but if my memory serves me right you cnt just paint specific verts. I think he would have ment paint in that specific area. if yo wish to edit the weights of specific verts . you can use the compenent editor where yo u can actually see these 0 - 1 weights.

Sometimes its more of a matter of doing it here to get the result your after. I found tools like skinny to be a huge help when doing skinning as it has a couple of neat features like letting you put everything on hold, and rotate the joint your ainting without leaving paint weights mode.

Also would be fair to mention the whole 0-1 business is required for the final weights - but can be disabled while you work. turn off "weight normalisation" will stop maya assigning new weights from joints automaticly. This can be useful if you are tweaking the weighting balance between two joints via the compenent editor.. making edits like..

0.5 0.2 0.3 (1 total) >> to >> 0.4 0.25 0.35 (1 total)

Morganism
09-25-2005, 05:21 PM
So therefore, subtracting is fine if you can control exactly where the weight is going. So if you hold weights on all the joints except the one you want the weight to go to, it'll work. And, unlike adding, there's no danger of trying to pull weight from held joints.

revilo3D
09-25-2005, 09:16 PM
And, unlike adding, there's no danger of trying to pull weight from held joints.

OH yeah that too.. that can sux..

what the whole business needs is a capped non normilisin' system.. so one can freely paint weights, but never paint over 1..
one could then just perhaps move the skeleton and deal with it like the method of wrap deforming..

i reckon :p

CGTalk Moderation
09-25-2005, 09:16 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.

1