Photorealistic hair anyone?

For quite some time I’m trying to figure out how to make photorealistic hair. Is possible at all with current Blender? To be honest, I never saw a convincing hair render.

What I’m looking for is a certain kind of texturing along the strands (which is very visible in the glossy highlights), and a subtly disorderly flow of the hair. What I usually see in renders looks too artificial to my eye, do to being too homogeneous.

Despite no lack of trying I couldn’t yet figure out good parameters for both. The most helpful thing for me would probably be a blend file.

These (photos) are what I’m aiming for:

Check this video and its description below:

1 Like

Thanks, I will analyse the material this guy created. Although I suspect the grooming of the particle system is the more interesting part of his example in the vid (which he didn’t explain how to do).

Thanks again. Quite some stuff to learn from that - and quite some amount of craziness :slight_smile: The material as such is interesting, and seems to have gotten the combination of shaders quite right.

It still lacks the fine details of the individual hair which become apparent at the zoom level of the images above. Doesn’t help that bump nodes do not work on hair. Tried to reimplement it, but there seems to be no way to access the strand tangent either. Anyone an idea?

Have you tried the new hair shader from the google summer of code project?

The work this student did became the new principled hair shader in 2.79.7 and 2.8. It’s based off of the hair shader made for zootopia, and should get you better results than the older one.

1 Like

I read about this one, but wasn’t aware that it got into mainline as ph. The label ‘principled’ turned me away from it, as I don’t like the normal principled (which is basically a node group without documentation about what happens internally, and reduced flexibility). But checking again, the ph (in direct coloring mode) seems to map the parameters directly to the ones used in the paper, which is good. Couldn’t figure out what random roughness is, though.

I really should be able to answer that since I used to follow the shader’s development, but I rarely use hair and it has been a while since the project finished, so I can’t remember. I think it was roughness per strand, and you need the hair info node to use it, but I’m not sure. If you read the thread, they probably mention what it is used for.


In any case, when looking at individual hair, it looks way more deserving to be called hair shader, so it might be the way to go. I’m still in the process of figuring out good values. For very dark hair it looks great.

To get the fine randomness along the strand, I believe I figured out something. Feeding a noise texture into the offset input of the shader looks promising.