Made Shell Based Fur, Ways to improve?

Hi guys
I’ve been working on some shadow of the colossus style fur and I was wondering if there are any ways to improve it?
I haven’t made any fin alphas yet, but you get the idea
so far these spheres use 25 shells
I was wondering if there is a way to soften and taper the strands




this is the simple set up I’m using

I used vertex paint to darken the hairs toward the root
and I planned to also use vertex paint to drive an alpha offset node, this would in theory shrink the hair thickness toward the tip
It hasn’t worked so well so far, it doest seem to give much visual difference as you can see in the first pic

This shell method seems ok? but I have seen better results using this shell technique like with face rig:

&d=1402236014

how is such fluffiness achieved? is it a shader?
I like the shell technique, it seems powerful with how flexible it can be but I wish it could achieve a softer effect like the fur fx plugin for unity : http://forum.unity3d.com/threads/furfx-mobile-physics-based-fur-shaders.202417/
apparently that uses up to 40 shells?
I am an artist not a coder unfortunately, so this is a difficult problem for me to approach

not quite a shell based method, but something similar you could use instead, or in addition to:

  • use a masked material
  • plug a noise map into the height input of a bump offset node. You can duplicate both of these nodes and keep repeating this loop for extra quality at the expense of performance. It’s basically like adding shells to the shader.
  • use the output of the final bump node as your new uvs for texturing purposes.
  • multiply a fresnel node and noise map (remember to use your new uvs), put this into a OneMinus node, and plug that into your mask opacity.

You’ll want to adjust the settings on the fresnel and maybe the bump nodes.

Sorry I’m on my phone and haven’t made anything like this in a while so a bit fuzzy on details.

e: Here’s a quick video I whipped up

You could also try blurring the shells in post processing. I’m guessing a bilateral filter would work nicely, though a simple gaussian could be enough. To select the relevant parts to blur in your postprocessing filter, you could either use the custom depth buffer, or use a Roughness value specific to fur only, and filter for it. Set the roughness to .87 for example, and only apply blur to pixels that have a roughness > .86 and < .88
Make sure not to use the same roughness value for other materials you don’t want blurred in that case.

1 Like