Home Technical Talk

Painting skin weights in Maya

Daz
Daz
polycounter lvl 18
Offline / Send Message
Daz polycounter lvl 18
Darnit I suck at this. Any experts care to talk about their technique? I'm finding it really tricky with complex overlapping geometry. And why the hell do verts pop all over the place when I use undo? I swear I'm doing something wrong.

Please help out a poor Maya rigging noob.

Replies

  • Asthane
    Offline / Send Message
    Asthane polycounter lvl 18
    I highly suggest David Walden's SkinningTools.mel. Mostly it's just an alternate UI that puts everything you need in one place, but I found it quite helpful (Especially for testing bone rotations). Other than that, well... Here's hoping someone else knows of a better one wink.gif

    (The poser plugin from that page is helpful too)
  • Whargoul
    Offline / Send Message
    Whargoul polycounter lvl 18
    Some tips:

    Only use the tool in "replace" or "smooth" mode. Subtracting weights doesn't work well, since it doesn't know where to assign the remainder.

    Sometimes smooth assigns a tiny bit of weight to every joint. I can't remember if Maya has a prune weights tool yet or not, but I wrote one a long time ago.

    Either have an animation which flexes all the areas in turn, or pose the area you want to work on. Paint using replace with a low opacity (wacom is nice here) using only the bones related to that joint. So for example: bend the elbow, select the Bicep and add weights. If you go to far or it looks bad, select the Forearm and add some weight to it. Smooth it. Add some more, smooth. Etc.

    I like to bind with harsh settings: only 1 bone per vertex. Make sure the right stuff is moving now, it's quick to reassign the verts like this. It should look crappy, but everything should move with the right bones. Then go in and make each joint work.

    I like to work from the top of the bone heirarchy downwards, and lock weights on bones when I'm done with them (to avoid an y accidental changes with the paint weights tool). So I would get the hips & lower spine working, then get the middle spine working, then ,lock the lower spine. Then work on the upper spine. When it's good, lock the middle spine. Then onto the clavicles, etc. Then down the legs. When the thighs are good, I lock the hips. Etc, etc.

    I tried using that guy's paint weights tools, but I didn't like them. I prefer to have an animation loaded. The way he has it work when you're scrubbing to rotate a joint in his tool, makes it impossible to undo any painting work you've done (instead, it fills the undo buffer with a ton of joint rotate commands).

    A wrote a suite of weighting tools some time ago, but I think Maya has added similar tools since then. Copy weights, copy weights selected, clean weights (prune, limit # of bones, quantize), transfer weights (moves weights from bone to bone), copy weights vertex to vertex (rather than spatially), remove history on bound meshes, mirror weights selected, bake weights (I use it to convert lattice to bone weights - very cool! Bind a torso to a 3x3 lattice, weight the lattice, then bake it to the bones). I don't think they have a tool like that though. But most of those are icing, you don't really need them they can just speed things up for you.
  • Whargoul
    Offline / Send Message
    Whargoul polycounter lvl 18
    Oh yeah, for overlapping geometry, try this: copy weights from one to the other.

    For instance, weight the entire body of your character (having the stuff on top hidden can help), then copy the weights from that to the accessories (watches, gun belts, backpacks, etc). This works great especially if you've lined up the vertices in the model. The isn't muh you can do about truly intersecting meshes, the linear nature of bones will always cause some slipping.
  • Daz
    Offline / Send Message
    Daz polycounter lvl 18
    Damn Whargoul you have just increased my workflow speed like tenfold. Much appreciated man. And thanks Asthane!
  • Snowfly
    Offline / Send Message
    Snowfly polycounter lvl 18
    You could try the Component Editor on the overlapping bits. So under the Smooth Skins tab you have a table listing all the bones and verts in the model. You can type in the weights from there, or use the slider at the bottomw, which is one of my favorite tricks. You'd work that by posing a joint, grabbing the verts around the area that needs to blend, and moving the slider back and forth til you get a value that looks good on the deformation.

    If you're blending verts between two bones, select the verts, highlight the entire column under the first bone and type '1', then highlight the second row and type '1' again. Then start using the slider. That way, the weights ping pong between only the bones you assigned them to, and not to the rest of the skeleton. smile.gif
  • Gmanx
    Offline / Send Message
    Gmanx polycounter lvl 19
    I'm also a noob to weighting so this info is going to be of great help to me as well.

    Props to Daz for asking.

    Props to Whargoul, Snowfly and Asthane for some truly golden time-savers.
Sign In or Register to comment.