I'm working on rigging some very long mesh hair.It is made of a bunch of tapered mesh tubes. I am looking for a method to rig it without needing a bone chain/curve for every strand.

My current setup is several bone chains that each control a clump of strands. When I spread the hair out, I get this: enter image description here

Alternatively, if I put the strands inside a deform cage and have my bone rig control that instead, I get this: enter image description here

In the first image, the problem is that the strands separate, rather than properly fanning out. In the second, the problem is that the deform cage stretches the strands horizontally. What I want is for the strands to interpolate between the control bones, like you can get with Particle Hair Children set to Interpolate.

I am aware of 3 ways to do this, but each has problems: 1: Rig every single strand with it's own bone chain. This is a massive hassle.

2: Use Curves instead of Mesh strands and rig them with the deform cage. This works perfectly, but then limits the shape of my strands to what I can create with curves, or requires me to use a curve modifier to attach each mesh strand to the curve (too time consuming.) And I lose Local Y/Roll rotation in either case.

3: Make curves that follow each bone chain and use them as Curve Guides for a few particle hair strands. Make interpolated children for these strands. Use Particle Instance to put mesh strips down each child particle strand. Then either use those as the hair, or have them control other mesh strands via Surface Deform modifier or Solidify+Mesh Deform. This technically works, but again is a huge hassle, loses Local Y/Roll, and is extremely kludgy and unstable. It crashes and regularly needs to be re-bound.

I've spent awhile on this problem, and at this point I'm hoping there's something simple I've missed. Does anyone know a better way to handle this?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.