blindsaypatten wrote:Have you tried fitting the shoes as rigid objects? That should avoid the distortions.
It does avoid distortion. But it's too much avoidance because it makes the shoes unnaturally rigid. Using *rigid vertex groups is quite handy for lots of stuff -- buttons, brooches, weapons, hand props, etc -- but it is rather limited in its current form. And there doesn't currently seem to be a way to adjust the amount of rigidity for various parts of the shoe.
- Shoes fit to baby, on default human.
I did try making just the shoes (but not the socks) rigid and I got strange results.
blindsaypatten wrote:For the more general issue of universal fitting, I think a paradigm shift is necessary. Instead of thinking of the vertices in the mesh as points in a single 3D space, think of them as points in cylindrical spaces around the bones. Then limit the transforms to changes in the lengths of the vectors from the axis to the point. If you choose a reasonable bone/axis structure you can achieve the same surfaces, or arbitrarily close to them. You just take the new vertex coordinate as the point where the vector intersects the new/morphed surface. Now your vertices represent places on the body and clothes that you fit to one body will fit any other body naturally.
It's conceptually similar to the way that armatures work (surface points are located relative to bones) with the simplification of not having bone rotations. You can still scale the length of bones.
Existing targets can be automatically translated into the new coordinates, and existing assets can be translated using the mesh that they were designed for, after which they will fit universally. A big win for everyone.
Now, I must admit that I'm not sure whether you're describing how it works or how it
should work.
I do try to visualize the armature when I think about how clothes will fit and deform when the human is posed, but MakeClothes uses the vertices on human/helper meshes to fit the clothes, so I think about that, too.
What I have noticed is that how universal a fit is depends largely, but not wholly, upon how many polys a mesh has, with low-poly meshes providing the widest range of possible sizes (more on that later).
Anyhow, here is the mhclo, obj and mhmat for the rigid shoes...