QuickFur - Shell fur for Unity Free and Pro

Available to buy on the Asset Store.
Supports Unity 2017.2

QuickFur is an easy-to-use solution for realistic fur in your games. It uses the “shell” technique to render millions of hairs with anywhere from 5 to 40 layers (or more if you want to build them yourself). The fur is completely customisable and utilises physically-based rendering, so you can make it look exactly how you want it to. If you want to dig into shader code, you can even apply your own surface or fragment shaders!

Customisation includes:

-Fur Colour
-Fur Map*
-Length
-Gravity and wind effects*
-Thickness
-Brightness
-Occlusion*

*See below

More Details

Fur Maps
Fur maps are the way QuickFur allows you to control your hairs on an individual basis. A simple noise texture (included in the package) is sufficient for great-looking fur, but by customising the alpha channel of the main texture map, you can alter the thickness of each individual hair. The more transparent a pixel is, the thinner the hair will be at that point. Note that higher resolution fur maps are required for more hairs.

Wind and Gravity
Gravity is a simple vector input that controls how the fur curves. With no gravity vector, the fur will protrude straight outwards, but by modifying this, you can give the fur weight, or give it a windswept look, etc.

The wind effects work by altering the effects of gravity dynamically at runtime. This makes the fur bend and sway in the direction (and with the magnitude) you define in the wind vector. The Wind Speed parameter allows you to customise how fast this wind animation plays. You can opt for wind and gravity to be applied in object space or world space, or any blend in between.

Occlusion
The Occlusion field allows you to give more depth to your fur, by customising how much the fur is “shadowed” by other hairs. This can really help to improve the look of your fur, particularly when using very thick hairs.

The package comes with several different shaders, with different lighting styles, so you can get exactly the look you want. These shaders are as follows:

  • Standard
  • Rim Lit
  • Toon Basic
  • Toon Basic Outline
  • Toon Lit
  • Toon Lit Outline
  • Unlit
  • Standard Cutout
  • Rim Lit Cutout
  • Unlit Cutout

Each of these produces a different look for your fur, and each of these has Unity’s built-in lighting system incorporated, so you can apply multiple lights, of multiple different types, and your fur will react correctly, with no extra effort from you. The cutout variants will also receive shadows in deferred rendering.

Each shader also has 4 versions, for different levels of detail. There are 5-step, 10-step, 20-step and 40-step shaders. The fewer steps there are, the faster the shaders will render, but will produce more obvious artefacts. The 20-step shader is sufficient for most purposes, and the 40-step should only be used for very long fur, or for fur very close to the camera. Note that these shaders do not currently have built-in LODs, though a LOD system is fairly easy to write for them in script, by swapping out shaders based on camera distance.

Included in the package is a “Hints & Tips” document, which will give a little more information on the details of how to produce the best fur.

So, all that’s left, I think, is to give you the links:

Demonstration Video (v1.2)
WebGL demo
Buy the package!

I hope some of you will consider using this package in your projects!

Just added a webplayer demo so you can try out some of the features of the shader. The webplayer demo does not allow full control of the fur (for example, you can’t change the fur maps), but hopefully it will give you an idea as to the results you can get with these shaders.

Does it work on Android and iOS?

I’m not sure, I will do some tests. Unfortunately I won’t be able to test iOS (as I don’t own an Apple computer), but I should be able to test it on Android. I think. in theory, it should work, but I suspect the performance will not be great.

I have tested this on a Samsung Galaxy S3, running Jelly Bean, using the webplayer demo you can try above. The shaders work fine. The 40 step shaders produce a slight framerate drop that is barely noticeable, but the others run perfectly happily. On the small screen you get with mobile devices, though, the difference between the shaders is less noticeable, so you can’t really tell much of a difference between the 10 step and 40 step shaders.

1 Like

Are the source of the shaders included, or are they compiled like in furFX (which is useless in my opinion)

The source is available in the package, yes. While there is a decent selection of available lighting models and so forth, I feel people would be better off with the ability to adapt the lighting and shaders to their own project. I should warn you that the source is fairly large, and not exactly the simplest source code.

The price of this package has just been reduced to $25! If you’re looking for fur, now is the time to get it!

Can it be used in a golf game to make its fields(Golf Course Ground)? Golf courses are covered mainly with lawn which is mowed shortly regularly. That makes difference with the fur which is rather long and fine. Will it be possible?

It should be possible. I would warm against using longer “hairs” on large areas, though, as they will start becoming performance heavy. You will also need to be careful with your wind and gravity effects, as they can cause artefacts if they cause the “hairs” to clip through the mesh. I will add that I haven’t explicitly tested this, as I haven’t had time, I apologise.

Does the fur support alpha maps?
I had a look at a basic fur shader, and it renders the full mesh.


Do your shaders support transparency?

That looks like a bug. The shaders should support transparency. It looks as though there is no alpha channel on the fur map, though. Are you sure the texture has the alpha channel saved correctly? Programs like photoshop don’t always save the alpha channels properly, which can produce problems. I could probably diagnose this better if I could see the texture you’re using, and the material you’re applying it to.

I should point out this is a different shader,not one of yours.

I uploaded it as an example to show what I was talking about.
Apologies for the confusion, I just wanted to show what feature I wanted, and you say your shaders support transparency, so all is good :slight_smile:

Ah, I see. They should work with that just fine for what you need, then!

Hey, just bought the furshader, looks very nice! I was wondering if you have an alphacutoff version of the shader so it can be easily used with deferred lighting. I’m trying to modify it to alphacutoff right now, but getting kind of lost in all the passes :slight_smile:

Does this work with shadows (i.e. The fur object is darkened in the shade)?

gecko this is a very old shader so if you are intending to use it with unity 5 you probably want a more updated one. If you want a shader for something that supports tessellation ie a pc running directx 11 or something running opengles 3.1 then you would be better off with a newer more advanced shader. Something like shader sandwich has an example tessellation fur shader for example that will get accurate shadows as a result.

Thanks for the reply. But actually, this particular project is stuck on 4.6, so I can’t use shader sandwich. Do you happen to know if shadows cast on a QuickFur object are rendered?

my guess is that shadows cast on it aren’t rendered which is why it is called quick fur as it is designed to not take up much performance. It looks like it is a package mean’t for non realistic toon style fur rather than more advanced fur that can respond to shadows from other objects. What platform do you want it for if it is mobile then you aren’t going to be able to render realistic fur in unity 4 because you won’t have the performance to do so. If it is desktop then maybe try a tessellation shader or possibly particle dynamic magic 2 and create you own fur game objects to project from the surface. If you want shadows you need the fur to have geometry for them to be able to receive shadows. Otherwise just use a standard shader that can receive shadows and then apply a fur like texture to it if it more important that you have shadows from other objects on it rather than the self shadowing of the fur.

Can you guys modify the fur shader so that it will work with Unity 5.5.1? We use the shader on
animals and it looks great. We need to upgrade to 5.5.1 for PS4 and want to be able to use the quickfur
shader.