He didn't disappear - he was skinned alive!


The good thing that came about in version three of Max was skinning. Now we had to wait a long time to get it, as most other packages seemed to have it by default. But there it was all new and shiney. And while, yes, it worked and did what you wanted it was never the most well thought out, advanced user typpe of tool. Just your bog standard matrix blend kinda thing. Now we are into the fourth age and along with this comes some new and funkier scripto support for all things skinny. This is where I come in. At work I have to work with skins all the time and as such have learned the mystic lore that is needed to control it's powers (uh oh! I seem to be getting all symbolic). Enought of this tosh! The skin mod is a bit pants sometimes, so I wrote some stuff to fix some gaps. There, that sort it for ya?

And my orders were to get somebody who could crack these bastards


There seemed to be some holes in the skin arsenal, so I did a few tool at work and now I share them with you. I stuffed them all in a package called Skintools. It's in it's first incarnation here, so expect more somewhere down the line.

Installation : - Nice and simple. All the tools work from a quad and all are contained in one easy to swallow script. Just unzip the skintools.mcr to your "ui\macroscrips" and you'll get a skintools category.

Gimme the weapon!


Here in follows a description of each tool....sorry there are no nice piccies to go with but most don't have a UI.

Skin Saver

This saves out all you hand painted vertex weights to a file. The positions of the verts are also saved. It's a good idea to use this tool on a skin that has NOT been animated and is in it's natural pose. If you intend to use "Load Weights Relative" not having used a neutral pose will affect how effective the re-weighting is.

Skin Saver Selected

Same as the other one except that it only saves verts that are currently selected in the viewport.

Load Weights Index

This is the simple version of the loading utility. It's used for loading the weights back into a skin if you manage to screw them up somehow. It works (like it says on the tin) by using the vert indexes to replace the weights. This makes it fast, but if you have taken away verts it will more than likely get the wrong index from the file and weight the wrong vert in your model. This is not a problem when adding verts as the indexes are appended and there is no saved data for those indexes anyway. Only sets weights it has data for.

Load Weights Relative

This is a more advance version of the load util that uses vert positions to replace the weights. The weights are saved relative to the pivot so world orientation of your model is not a problem. It works by doing a compare of the postion in the file against the nearest vert in the model. As a result it can be quite slow on a large model. It looks for a vert within the tolerence and mtches the weights.

Clear Zero Weights

Just a bit of tidy up here. This drops out all bone assignments that have a weight of less than 0.001. You can end up with these if your blending quite a few bones together and ramping the effect of one up or down quite a bit. After the weights are normalized you can end up with some tiny weight effects. This just clears them out. Good for exporters to game stuff as it clears redundant data.

Get Skin Element

Hmmmm. Of much use. Lets you pick and element of a mesh and select all the verts in the skin modifyer. At last no more hit and miss when picking verts. One note. Make sure you have a vert selected before you use this tool. Otherwise you may find the absolute weight spinner in the skin mod will be greyed out. (script bug - it still thinks that no verts are selected! doh)

Paint Absolute Weight

Pretty simple this. You have a size and a weight to paint control. Click the paint button to paint the absolute weight to the verts. The size can be a bit missleading as I use the face to key off and then find the vert. This method is nice and quick but may miss the odd vert. The only way round this is to search the whole mesh to find close verts and this is slow so I don't do it. I much prefer to paint an absolute weight rather than the standard paint weight function that has all that fall off etc.

Weight Info

This shows you what bone is weighted to what vert on a per verts basis. Allows you to weed out extra assignments that you dont need. You can exclude bones from the floater and if you double click on the bone it will select it.

In this version of skintools the info tool has been updated with viewport callbacks for displaying which vert you have selected and also a normalize function, which makes sure that all your verts weights add up to 1, and a "> X" bones per vert selection tool.  This is really a tool for games creators that need to have specific numbers of bones per vert.

Enhanced:-

The rules now also include unweighted and unnormalized options. Also Cleaner updating the info box.

Mirror Paste

This is a new version of mirror paste that works MUCH better now.  It copies all the weights from one vert to a mirrored version. It uses identifiers to work out which bones to swap with which.  I.e "Left" for bones on the left and "Right" for, guess what?  It IS case sensitive so watch out.  It also has a tolerence to increase chances of finding a match.

Enhanced:-

It now also shows you where it thinks the mirror verts should be. So you can choose another axis or know whether your tolerence is too low. Press cancel display to clear the verts. Also added a mirror centre point. Choose between "Mesh middle", "Pivot Point" or "World Origin"

Reverse Cross Section

This is nice and simple. It reverses the order of the selected envelopes cross sections. Useful after a paste envelope as it sometimes flips them

Skin Gradient

This is a new tool. Use it to draw a perfect gradient of weights. Select some verts and a bone you would like to alter the weights of. Then set your gradient options, like start end end weight. Then click "Gradient". Click once to start to gradient and once to finish it.

You'll get the hang of it.

1.32 - added line draw so you can see direction when doing dradient.

Re-grab skin

For the times when the "Always deform" button just doesn't cut it. This mainly happens when you use splines as bones. The skin won't reset to it's default position. This does a proper regrab for use with splines.

About
Simple version info option. Make sure your up to date.

 

One point to note is that the paint absolute and get skin element tools work on meshes only not poly's. I'm sure this functionality will come at some point in the future.(unless of course some kind soul wants to add it for me :o) - as if!)

All tools are also not severely tested. They worked on the thing I was doing when I wrote them. But you could easliy have some weirdo skin setup that may crash some of them. I'd be glad to hear all bugs and suggestions. You know the address.

Get yer mitts on it then!

SkintoolsV1.33

Some kind soul by the name of "The Bozo" has created some icons and *.kbd files etc for skintools.  Thats what we like chap, a bit of input!  Good work our kid.

Skintools UI stuff

click to the home of cheese