Jump to content

  • “Great art picks up where nature ends.”  Marc Chagall 

Sign in to follow this  
MikeSem

skinning weight map transfer

Recommended Posts

Hello,

I've got two almost identical  characters. The only difference in between them in their height.

I've setup a simple rig and skinned  one of them. 

How do I transfer weight map from one model to another ?

I've tried just copy/paste weight map tag but it didn't work well. I'm not sure what is the proper way to do that.

 

Thanks in advance!

 

Mike

Share this post


Link to post
Share on other sites

Hello

Unfortunately almost identical when it comes to the point order difference is enough for it not to work.  The vamp tool is worth a try found in the Character/Manager menu.  The other way  would be to rig the other character with same rig, and export the weights from the weight manager, then import the weights to the new character.  I have to be honest, iv not had much luck with this, and think if the point order is difference the Vamp is your only chance.

Go to page 187 from this link, it gives a quick start to Vamp, not sure what the r18 manual covers, maybe the same thing. http://http.MAXON.net/pub/r11/doc/quickstart_us.pdf

Dan

Share this post


Link to post
Share on other sites
  • Topic Author
  • Thanks Rectro,

    The point order is the same, I'll try export/import weights. 

    Share this post


    Link to post
    Share on other sites
    Just now, MikeSem said:

    Thanks Rectro,

    The point order is the same. The only difference in the scale of two models, rig is also the same. What is the workflow in case like that?

     

    Thanks

    If the point order is the same I would have thought you could just copy the the weight tag from one to the other.  Are you using a custom rig or a Character tool made one?  Im not at my PC right now by from memory you open the weights manager, view by Hierarchy , select all bones, and in file save weights.  do the same process for target rig but load the weights in.  Il have a proper check tomorrow, its midnight here.

     

    Dan

    Share this post


    Link to post
    Share on other sites
  • Topic Author
  • Thanks a bunch!  

    I tried to copy weight tag but it didn't work, the geo doesn't react on controllers. After that I have 2 weight tags , one from the previous binding that I can't delete for some reason. 

    I'm using Character rig. 

     

    I also saved weight map(text file) and import it into a new model but again no success. 

     

    Share this post


    Link to post
    Share on other sites

    I just had a quick check, and in the weight manager select the object, order my Name:  From memory I had to press normalise after loading in the weights.  It sounds like the point order is different.

     

    If you can share the file, I could take a look tomorrow, well in about 10 hours from now.

    This is from the manual:

    "Save Weights...

    Use this command to save the joint weights for the currently selected object to a text file. This command can be used to quickly switch weights between two characters without having to do so using copy and paste (in the Weights Manager).

    The name (object, Weight tat, joints/object, etc.) and weight value for each point will be saved to the text file.

    To save weight information in a text file, simply select the object or its joints in the Weight Manager and call up the Save Weights command. A dialog window will open in which you can select the location to which the file should be saved.

    Save Options

    Click on the icon at the right of the command to make the following option available.

    Zero Weights

    If enabled, joints/objects with no weights will also be saved in the text file. This is the method that is most often used because the correct weight transfer between joint/object hierarchies always exists. If disabled, the file will be smaller and less complex. This can be useful if you want to edit the text file manually."

    Share this post


    Link to post
    Share on other sites
  • Topic Author
  • Rectro, 

    You are my savior  =)  It works!!

    So the steps I did:

    1 - select source mesh

    2- call weight manager 

    3 - In the joints tab select all joints

    4 - call file - save command

    5 - select target model

    6 - update weight manager so the target mesh is appeared in it

    7- select all joints of the target mesh 

    8- load saved weight map text file

    Done!

     

    THANKS!!!

    Share this post


    Link to post
    Share on other sites
    On 1/16/2017 at 6:00 PM, MikeSem said:

    Rectro, 

    You are my savior  =)  It works!!

    So the steps I did:

    1 - select source mesh

    2- call weight manager 

    3 - In the joints tab select all joints

    4 - call file - save command

    5 - select target model

    6 - update weight manager so the target mesh is appeared in it

    7- select all joints of the target mesh 

    8- load saved weight map text file

    Done!

     

    THANKS!!!

    Great question and thanks Recto for providing a solution and Thanks MikeSem for showing how you resolved it!

    Share this post


    Link to post
    Share on other sites

    I know this post is old, but its 1st result on Google for me and I've been Googling around this whole evening to find a solution to this exact thing, and now I've finally got it working, so I wanted to share how I did.

     

    In my example, I've been using and exported FBX model from WoW Model Viewer, customized/cleaned the rig by deleting redundant bones and adding PoseMorphs to different joints.

    I then wanted the customized/cleaned rig+posemorphs to be reuseable on different characters of the same modeltype. In this case, exporting an identical modeltype, but with different textures such as eyecolor, haircolor, skincolor and clothes.

    Model A is my source model, which I want to take my rig and weights from, and transfer to Model B.

    I did it this way:

    Step 1: Model A and Model B in the same project file. They must be in the SAME position and exact same size and model.
    (The models in this example consists of a Polygon Object with Texture tags, UVW Tag, Phong Tag and Weight Expression Tag, with a Skin Object as a child.
    Beneath the Polygon Object is a Joint Objects with up to 195 joints)


    Step 2: Delete Joint Object (including all joint children), Delete Skin Tag, and Weight Expression Tag on Model B, so only the Polygon Object is left from Model B. (Keep UVW Tag, Texture Tags, and so on).

    Step 3: Copy the Joint Object, (and joint children) from Model A, and put it underneath Model B. It does not have to be a child of Model B.

     

    Step 4: Right-click the Joint Object that you just put beneath Model B, and click "Select Children" to be sure, that all sub-joints are selected. Ctrl+click the Polygon Object, so that you have both the Joint Object and the Polygon Object selected. Go to Character>Commands>Bind to bind the joints to the polygon object. Now the joints are connected to the mesh, but the weights are still to be fixed.
    (If you are playing around with World Of Warcraft models like me, be sure to unselect the main parent Joint Object which just ends with "_hd", so that the first selected joint is the "hd_bone_0", and all of its children.)

    Step 5: Go to your Model A, click on its Polygon Object, and click on its Weight Expression Tag, so both of them are highlighted. Now got to Character>Manager>Weights Manager... and a new window will open. Click on the Weights tab, then right-click on one of the joint names and click Select all.

    Step 6: Now, in the Weights Manager, click "File> Click on the Gear beside the "Save Weights...", and be sure to check "Zero Weights". Now choose a place to save the weight .txt file.

     

    Step 7: Click on the Polygon Object and the Weight Expression Tag on your Model B, that you want to transfer the weights to.

     

    Step 8: Go to Character>Manager>Weights Manager. Go to the Weights tab, and right-click on one of the joint names, and click Select all.

     

    Step 9: With the all weights selected, go to File>Click on the Gear beside the "Load Weights...", and be sure to check the "Match Joint Names". Now find the weight .txt file you just created, and let it load in.

     

    Now you should have succesfully transfered the weights. Be aware, that the loaded weights are not always colored the same as the weights on your source model, so this might confuse you to believe, that the weights did not transfer. Try moving around different joints on your Model B, and see if the mesh moves correctly with it. It should move exactly the same weighted areas, as on your Model A.

    At least this worked for me on exported .FBX World Of Warcraft models.

    Notes:
    I'ts not a problem to rename joints on your source model before the transfer, but if you have grouped some joints in nulls, be sure to take the joints out of the groups and delete the nulls before you attempt to bind the copied joints to the target model. I'm not sure if deselecting the nulls but still selecting their joint children will work.

    Share this post


    Link to post
    Share on other sites

    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Reply to this topic...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

    Sign in to follow this  

    • BLOGS / NEWS & SPECIAL ANNOUNCEMENTS

    About Us

    C4D Cafe is the largest Cinema 4D community. We provide facilities for discussion, showcasing and learning our favourite software.
    Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, watch tutorials directly from our video gallery,  get your own private messenger, post and upload images, manage your profile and much more. If you need to find solution to your problem or otherwise ask for help, C4D Cafe is the right place to be for learning 3D.  :cowboypistol:

    ×
    ×
    • Create New...