Adverti horiz upsell

copySkinLayers (for ngSkinTools) 0.1.0 for Maya (maya script)

Transfer skin layers across meshes with different topology.

License
Button download
399 Downloads

Compatibility

  • 2015, 2014, 2013, 2012

Operating Systems

  • Linux
  • Windows

History

Created:05/29/2014
Last Modified:05/29/2014
File Size: 19.8 KB

Keywords

ngSkinTools, layers

ngSkinTools is an incredible plug-in that speeds up the skinning process and significantly improves the quality of life of riggers and TDs. Unfortunately, at this time, the skin layers cannot be transferred across meshes with differing topology.

This script provides a temporary, unofficial work-around to accomplish the task of weights transfer. This procedure uses Maya's native "copySkinWeights" command to transfer individual layers one at a time, and does the same to transfer masks separately. The benefit of this approach is that we can take advantage of already existing functionality (e.g. copy by closest point, uvs, name, closest joint, label, etc.) 

Important Note: The script assumes that you already have ngSkinTools installed. It uses the ngSkinTools API and other UI elements from ngSkinTools. Link to ngSkinTools download - https://www.ngskintools.com/downloads

To Install -

Copy "copySkinLayers.py" into your scripts folder, and run the python commands:
from copySkinLayers import CopySkinLayersWindow
cslWin = CopySkinLayersWindow.getInstance()
cslWin.showWindow()


To Use -

The tool works in the same way as Maya's default Copy Skin Weights tool:
  1. Select source mesh, shift-select destination mesh (ensure that both meshes already have skin clusters with the necessary joints, and have skin layers initialized.)
  2. Set options for surface association and influence association.
  3. Copy! (Wait a few minutes depending on the number of layers & influences involved.)

Limitations -

One limitation at the moment is that layer transparency will not work. (Use "Edit -> Convert Transparency to Mask")

Maya will print a number of warning messages, but they don't seem to break anything (yet...) It has been working fine on my rigs. I usually use "closestPoint" for surface association, and "name" or "closestJoint" for influence association.

I have not tested all the options thoroughly, so do let me know if you run into any errors.

Please use the Bug System to report any bugs.
Please use the Feature Requests to give me ideas.
Please use the Support Forum if you have any questions or problems.
Please rate and review in the Review section.

People who favorited this item:

  • yanruisang
    yanruisang
  • Mathieu Isler
    Mathieu Isler
  • Gwenette
    Gwenette
  • Algrias
    Algrias
  • gotham
    gotham
  • MayaMayfair
    MayaMayfair
  • marc thur
    marc thur
  • Hellbunny
    Hellbunny