Home Technical Talk

Maya - Skinning

Elie
polycounter lvl 7
Offline / Send Message
Elie polycounter lvl 7
Hi,
I'm rigging some characters and I have an issue, I can't figure it out...
There is some elements on the clothes of the character, (separate mesh) 
And now it looks like they are floating around when i rotate the chest.

I tryed to set the vertices to 1 in the component editor but I can't make it look good :(

does anyone have an idea ?

Replies

  • monster
    Offline / Send Message
    monster polycounter
    Hi Elie,

    We needs to see screenshots or videos to help. If you are just gettings started with skinning. My general advice is to make everything rigid (1.0 in the component editor). Then do a second pass and only blend weights where needed.

    If you are talking about body exiting the clothes when the character moves around, that's always hard to deal with. I usually delete the mesh that is covered by clothes, or make the color/texture of the body under the clothes the same color as the clothes so you don't notice it.
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    Thanks a lot, I will try... For screens, I don't know if I have the rights to posts unfortunately...
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    One other note : I'm having a hard time with the component editor,
    sometimes I try to set everything to 0 on one joint, and the weights are distributed on the joints I don't want to use... Is there a way to "lock" them ?

    And something else I noticed. When I export my deform skeleton and my mesh skinned in .fbx : 

    it seems to loose some weight paint I spend time on my .ma file,
    I check this while importing the .fbx on an empty scene, and there are things that are broken. The trick there is to re-paint some skin weight, and re-export again, but it seems weird to do since I'd like to finish those steps at least in a real true animation maya file, and avoid moving around and checking the joints at this stage of the process

  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    ...And an other crazy ask : 

    I know there is a way to update the topology of a mesh that is already skinned, but keep the weights. In other word, one different object, and the same skinning.

    There should be a script to do this, I'm sure of it, but is it to hard to find, or am I just dreaming awake ?
  • monster
    Offline / Send Message
    monster polycounter
    Elie said:
    One other note : I'm having a hard time with the component editor,
    sometimes I try to set everything to 0 on one joint, and the weights are distributed on the joints I don't want to use... Is there a way to "lock" them ?

    And something else I noticed. When I export my deform skeleton and my mesh skinned in .fbx : 

    it seems to loose some weight paint I spend time on my .ma file,
    I check this while importing the .fbx on an empty scene, and there are things that are broken. The trick there is to re-paint some skin weight, and re-export again, but it seems weird to do since I'd like to finish those steps at least in a real true animation maya file, and avoid moving around and checking the joints at this stage of the process


    1. Workflow-wise, it's better to assign weights to their intended bone than to subtract. For example, if the Neck is influencing the Head too much. Don't select the Neck and remove weighting. Select the Head and add weighting. This will keep things much more predictable.

    2. Is this for a game engine? Couple of things. Game engines have a 4 bone limit. So when you apply a Skin in Maya (A) set the max influences to 4 and (B) use the Prune Small Weights tool to remove minor influences. The second one will help with #1 above as well.

    3. If you are doing minor edits to the geo, just do them after skinning and then "Delete Non-Deformer History". But if you have a whole new character use the Copy Skin Weights tool. (Which acts like a transfer weights tool.) Read this section:

    Copy all weights
    https://knowledge.autodesk.com/support/maya-lt/learn-explore/caas/CloudHelp/cloudhelp/2015/ENU/MayaLT/files/Skinning-Copy-smooth-skin-weights-htm.html
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    Thanks a lot monster,

    I'll check that for sure.
    For point #2:
    Yes it's for a game engine. It's for Unity. Right now  I use when bind skinning: 3 for max influence, and then DeltaMush from advanced skeleton, just to let you know. Maybe it's not the best way to go for games ?
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    I've just discovered the bake deformation to skin weight tool, and it seems to be what I needed : my "last piece of the puzzle" ^^
    But here is an other : 

    I couldn't export in fbx a jiggle deformation on a mesh I did in Maya to simulate a fat character. Is there a way to bake this ?
  • monster
    Offline / Send Message
    monster polycounter
    Only Skin and Blendshape deformers will import into Unity.

    You'll need to manually convert the jiggle to joint animation or blend shape animation. But that's probably more work than it's worth.

    It maybe be easier to add a joint for the belly in Maya and setup a sprint joint in Unity. But those tend to rocket off into space as well.

    Last suggestion is to use a script like Spring Magic to add secondary motion to joints.
  • Mark Dygert
    1. Workflow-wise, it's better to assign weights to their intended bone than to subtract. For example, if the Neck is influencing the Head too much. Don't select the Neck and remove weighting. Select the Head and add weighting. This will keep things much more predictable.
    This is because it will redistribute the subtracted weight among the other bones, usually in ways you don't want. It's better to paint positive weights to the intended bone and have it steal the weight it needs.
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    Thanks Mark for the reply, but is it normal that in the component editor, sometimes the total result for one vertice is different than 1 ? I end up setting it to 0, then it re-distributes to other joints that show up, then I choose the joints I want to work with and set a total to 1. It can be hard to manage precisely, especially for fingers.

    For this jiggle joint animation, I did it with a hand-made keyframe on locator constraints to some joints. I like it but I think it would be even better if I could manage it with a dynamic base like a Spring magic like you said monster. I think advanced skeleton has a feature like that too. With this kind of tools, I could have a pretty solid secondary motion for tails, dead tentacles etc.


  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    Hi, I have some difficulties woking on reference with the topology when I'm rigging. I use the advanced skeleton in Maya. 
    I know that it is what I should do: reference the mesh and rig this and then update the mesh scene file in the case of changes. But I don't know how, it seems impossible when skinning at the same time. The perfect situation would be to keep my skin weights of course... 

    Or would you always do copy and paste skin weights directly in the rig scene file?
  • oglu
    Offline / Send Message
    oglu polycount lvl 666
    We use a separate skingeo and copy it over after the Hero geo is final. 

    Transfer the weights over with mGear. Its free.

    https://youtu.be/yqXwFWAIjKo

    Or use Ingos weightpainter. 
    http://www.braverabbit.com/brsmoothweights

  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    Thanks a lot, oglu, I'll check that, are those solutions OK for a game engine use, like Unity? 
  • oglu
    Offline / Send Message
    oglu polycount lvl 666
    Sure you just have to delete all cumstom nodes like shown in the video.
    Those are standard weights in the end.
  • Elie
    Offline / Send Message
    Elie polycounter lvl 7
    seems like a lot of helpfull resseources out there, but I still don't get it how it could simplify my life for now! 
Sign In or Register to comment.