My last post was about skin which is of course important (and I’ll be continuing on that!) - but I took a detour and decided to implement a proper hair shader.
By "proper" I mean, getting those hair-like anisotropic reflections and getting the coloring right.

It employs kajiya-kay style anisotropic technique to get those specular highlights, which depends on a flow map (though it more or less works withoutt one for non-curly hair. Along with lambert wrapped difuse of course.
I also spent quite a while adding subsurface lighting effects. It’s a kind of mix between backlighting and rim lighting to try and get somewhat of that effect sunlight illuminates the hair, making it almost glow and giving very dark hair a warm red glow.
The colorin…
My last post was about skin which is of course important (and I’ll be continuing on that!) - but I took a detour and decided to implement a proper hair shader.
By "proper" I mean, getting those hair-like anisotropic reflections and getting the coloring right.

It employs kajiya-kay style anisotropic technique to get those specular highlights, which depends on a flow map (though it more or less works withoutt one for non-curly hair. Along with lambert wrapped difuse of course.
I also spent quite a while adding subsurface lighting effects. It’s a kind of mix between backlighting and rim lighting to try and get somewhat of that effect sunlight illuminates the hair, making it almost glow and giving very dark hair a warm red glow.
The coloring is also pretty good, using an alpha texture to get the alpha clipping, a random strand color texture where each channel (RGB) modules hue, saturation and value so you get per-strand color variations which is often overlooked.
You can also make the gray progressively gray to simulate aging.
Finally, it can also animate using either a texture or vertex colors, so it’s more life-like with those flyaway hairs swaying in a sine-wave like pattern.