Lets talk about long hair

Hi All,

So I only started using Blender last year and am working on my first character. So far mostly been going pretty well, but I’ve hit a wall and that’s all to do with hair.

I want my character to have fairly long, styled and believable hair. While this is even 4 years old, it’s a very good example of what I’m after: https://www.youtube.com/watch?v=WVJyGzPJIeQ

Now I have a pretty idea how to recreate that and there’s been many other examples by other Blender artists doing much the same thing.

However, there is one huge problem, No One Ever Animates. It is always a single, posed still image and I want to bring my character to life.

I’ve been testing out the particle system and when it comes to moving hair, it’s somewhat lacking in features/options. The first classic problem seems to be that child hairs penetrate the mesh and there really isn’t anything you can do about. I even recently reported it as a bug, and found out why it doesn’t work, the child hairs aren’t tested for collisions, only the main emitter/guide hairs. So that seems to rule out the particle system, which in addition also has no means to control or manually adjust any part of the resulting simulation.

As such, does anyone have a possible working solution or technique that one can even remotely use in Blender to create/animate and control long hair on a character. Or are just doomed to always put a cap/hat/headband on short haired characters?

They did it in Cosmos Laundromat. I’m not a cloud member, but I would think that there are materials available there to guide you.

Take this with a grain of salt, as Cosmo’s Laundromat used a special build of Blender with hair features that aren’t in release builds to get around the very real issues with Blender’s handling of hair for animation.

Armature deform modifier and cloth simulation could work

The trick is to copy the upper part of your character and active collision on it, decimate it and then bake your simulation, don’t forget to put your collision mesh in another layer so it wont be rendered. That way you’ll have a hair emitter in your first mesh, and a mesh with collision who has the same animation on it

1 Like

Yeah, I’ve already read up about all the plans for the hair sim and what they did or tried for Cosmo, but that build is basically old and dead and all of those changes died with it, so really nothing to be gained there.

I’ll check out that cloth sim video, but the hair and cloth system use the same code for simulation, so much the same problems I think.

Thing is that still really doesn’t solve the problems. Even if its a copy of the mesh, any child particles will still not be tested for collisions, and hence will still cut through the mesh. If one then adjusts the size or position of the collision mesh or change the test distance so that children particles don’t penetrate, then half of the main hair bulk will just sit or float so far away from the character that it’s almost like floating in water.

And of course, one still has no manual control of the resulting simulation to make fine adjustments.

This doesn’t help you, but just to walk on that gooseberry-memory lane. I watched alot of their weekly broadcasts, and remember one nice hair trick. Yes, only parent hair is tested for collision, but they added feature, that if any hair is going through another surface, it was cut down. I mean, the end of that hair was not visible. And that one feature was good enough to solve many problems. I wish even that would have been brought to public master branch.

It was true before cosmos laundromat but not after. Hair Dynamics was changed to take in account a volume of hair guides. It is in master since 2.74.

You have a curve widget to control Clumping of children. At the end of guide, children can be closer to guide than at start, it may help to obtain things less weird.
You also have also a Flatness control for the kink. It may have a weird result while rotation.

Most of 2.4x hair feature were thought with fur in mind (big buck bunny). At this time, it is was just not an option to think of long hair because of too heavy computational times.
Globally, 2.5x hair is same system improved to model haircuts (Sintel).
In a certain sense, Gooseberry was a first attempt to animate long braids of Frank’s character.
But as a sheep, it was not dramatic If result was not perfect. And the movie was too short to give a technical satisfying solution.
It ended up with new features that were a return to dynamics as a volume, not really satisfying for hair locks.

I have no idea what lukas is currently doing. But hair creation and physics should change in future blender releases.
Cycles is supporting hair shaders on other types than particles (meshes, curves, etc…). Currently, it may sometimes be more efficient to use tricks.
Use lattices, converting hair to meshes or curves …
But the feature request about plausible physics reaction of children without a nightmare of computations is not an easy one to solve. It already takes a lot of time for guides with lots of segments. So, for children, too…

This is really driving me nuts.

Below is a screen shot of one of my current tests and I’ve been testing a lot.
General Background details:

  1. Scalp mesh sitting just under the head which has the particle hair applied to it.
  2. The hair is all direct emitter strands, 500 of them, coming from a single face assigned vertex group, there are no children strands at all.
  3. It was made with 10 segments and then all basically combed into place
  4. The overall model is sub-divided at 2 levels, with the collision modifier after the Subsurf.
  5. The collision test is using an outer setting of 0.3
  6. The head just does a basic turn from right to left and then after a pause, back to centre.
  7. The simulation was run with 30 quality steps (run at around 0.4 fps, with just 500 strands)

As you can see, when the head starts to turn into the hair, it just cuts right through. After it stops, pauses for a bit and then turns back, the hair then just goes crazy, all over the place, basically nothing like real hair.

As such, it seems particles just isn’t an option.


Could you elaborate on that a bit more, maybe even a very basic blend test file. Are you saying one could ‘render’ hair that looks much like the particle system hair, but over a mesh.

I tried that, it showed initial promise, could get a basic shape and look using particles and once converted to a mesh, I had a mass of vertices that I could ‘push’ around with proportional editing and I guess lattices, etc.

However, it had two very big problems:

  1. The resulting mesh was only vertices and edges, which while light and easy to work with, cycles won’t render it, as it had no faces.
  2. So I added faces, by then converting it all to a curve and then under the Geometry section, just upping the Bevel Depth. This did of course now create faces and for a whole head of hair, would create a massive amount of them. But it didn’t matter, since as soon as I tried to render it, Blender would just crash.

I guess this is why so many female characters with long hair are either:
a) never animated, or
b) all the hair is pulled back to a ponytail.

I am a barber by profession. Long hair looks good, but these days the trend has changed. Everyone like short hair, spikes and beared. I am learning new techniques of hair cutting at Barberseye and would like to start my own saloon