Quote by magilla:
the biggest issue we found was centreing the pivot in the mesh rather than pushing it to one side as you would do with a shoulder or elbow.
That makes a lot of sense. If you feel the tip of your elbow while rotating it, you will notice that it moves back and forth quite a bit, making it an inapropriate place to put a joint. The actual axis of rotation seems to go through two lumps on the end of the upper arm bone (humerus). I think the anatomical names of these lumps are medial and lateral epicondyle. (note: I have no formal anatomical education whatsoever, I just conclude this after studying my own elbow and consulting Sarah Simblet’s Anatomy for the Artist).
Personally, my biggest problem with skinning is in the workflow of transfering weights between meshes. A.t.m I’m working on a low poly character, where the topology of the mesh is very dependant on joint deformations, so I keep having to change the topology when I skin and thus having to re-skin. Now, since my topology is skin-dependant, I don’t want to start UVing seriously until I know my topology is right, and Maya’s weight export relies on proper UVs. So I’ve made a preliminary UV mapping, just making sure the UVs don’t overlap and are within the 0,0-1,1 UV space. But as soon as I make changes to my topology, I usually mess up the UVs. Quite a catch 22 there. Seems like your model and mapping has to be 100% finished before you even start skinning.
Anyway I really want a way to work more flexibly with modelling/UVing/skinning, where you don’t have to take a sort of assembly line approach (1 model; 2 UVs; 3 skin weights), so I decided to start coding a weight exporter/importer that’s more flexible (albeit slower) than the availible skin weight transfer scripts (Maya’s UV-dependant one, which, to add to the drama, produces huge filesizes, and S.D. Serbos’ and M. Bazhutkin’s exporters which are quite limited in respect to topology and that you can only export/import for single skin clusters and whatnot).
The one I’m working on will be
*UV independent.
*Topology independent.
*Able to transfer weights form poly to Nurbs, Subd to poly objects and so forth.
The way it works is it only exports the world space coordinates of the control points (verts/CVs) and their weights. When importing, it checks which points in the export list are closest (world space-wise) to the “importee” point and averages the weights of the exported points around it.
I’m quite new to both Maya and Mel (I’m a Max/Maxscript native) so it’s taking its time, but I should have a version up for testing next week. Also, I might have missed a feature or two in Maya, so if there’s any way to get around the above problems before I do any (more) unnecessary work on the script, please let me know.