Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

QuickFur - Shell fur for Unity Free and Pro

Discussion in 'Assets and Asset Store' started by Hoeloe, Oct 8, 2013.

  1. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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:

    I hope some of you will consider using this package in your projects!
     
    Last edited: Nov 29, 2017
  2. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
  3. duncanx

    duncanx

    Joined:
    Feb 12, 2011
    Posts:
    45
    Does it work on Android and iOS?
     
  4. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
  5. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
    Last edited: Oct 9, 2013
    Mark_01 likes this.
  6. olivier-etienne

    olivier-etienne

    Joined:
    Feb 15, 2013
    Posts:
    13
    Are the source of the shaders included, or are they compiled like in furFX (which is useless in my opinion)
     
  7. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
    Last edited: Oct 9, 2013
  8. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    The price of this package has just been reduced to $25! If you're looking for fur, now is the time to get it!
     
  9. TimeSniper

    TimeSniper

    Joined:
    Nov 26, 2012
    Posts:
    18
    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?
     
  10. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
  11. Steviebops

    Steviebops

    Joined:
    Apr 9, 2013
    Posts:
    132
    Does the fur support alpha maps?
    I had a look at a basic fur shader, and it renders the full mesh. $25188-furissue.png
    Do your shaders support transparency?
     
  12. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    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.
     
  13. Steviebops

    Steviebops

    Joined:
    Apr 9, 2013
    Posts:
    132
    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 :)
     
  14. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    Ah, I see. They should work with that just fine for what you need, then!
     
  15. Futurerobot

    Futurerobot

    Joined:
    Jul 13, 2011
    Posts:
    179
    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 :)
     
  16. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,238
    Does this work with shadows (i.e. The fur object is darkened in the shade)?
     
  17. IanStanbridge

    IanStanbridge

    Joined:
    Aug 26, 2013
    Posts:
    334
    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.
     
  18. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,238
    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?
     
  19. IanStanbridge

    IanStanbridge

    Joined:
    Aug 26, 2013
    Posts:
    334
    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.
     
  20. psrout

    psrout

    Joined:
    Feb 3, 2017
    Posts:
    1
    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.
     
  21. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    It's been a while, but I'm finally working on an update to this to support Unity 2017. I apologise entirely for the long period during which this package was unsupported. The new version is a complete overhaul with newly structured shaders based on the standard physically based shaders, though the Rim Lit, Toon, and Unlit ones will still be included. Unfortunately, since the fur shaders work on the transparent render queue, they won't receive shadows. However, I'm looking into adding some alpha cutoff shaders in a future update, so look out for that.
     
  22. MiriamAteo

    MiriamAteo

    Joined:
    Sep 26, 2017
    Posts:
    17
    Hi!

    I'm trying to use these shaders on a skinned mesh in Unity 2017.2.0f3, however, they do not seem to work. The shader is just transparent. When I apply them to the same mesh exported without any animation, they show up fine, that's why I think the Skinned Mesh Renderer might be causing the issue. Do you have an idea why this is happening, and how to fix it? I really do need to be able to rig the mesh, without that the shaders won't do me any good.
     
  23. MiriamAteo

    MiriamAteo

    Joined:
    Sep 26, 2017
    Posts:
    17
    Please respond. We need these shaders for a project that is due in a few weeks, and it would be very unfortunate to have spent 25$ on something we can't use.
     
  24. MiriamAteo

    MiriamAteo

    Joined:
    Sep 26, 2017
    Posts:
    17
    In case anyone else is having this problem: The shaders do work on skinned meshes, however the fur length is somehow affected by world space transforms (scaling the model up or down affects fur length, which it shouldn't).

    In my scene the fur became enormously long, causing the mesh to appear transparent because the camera is inside the first layer of fur. I fixed it by scaling the model up in Blender instead of Unity.
     
  25. Hoeloe

    Hoeloe

    Joined:
    May 9, 2013
    Posts:
    31
    Ah, I'm glad you got this sorted out. Apologies I couldn't reply earlier. It's odd that this seems to occur only for skinned meshes and not static ones, I may have to look into that...

    For future reference, Unity's mesh importer has a "scale mesh" option, which does scaling operations on the import directly so you don't have to rely on a scaled transform like that. Might save you some time in the future.

    EDIT: I've located the source of the problem. Remarkably simple actually. I'll see about getting an update sorted out. Thanks for finding this, and sorry I couldn't help out sooner!
     
    Last edited: Feb 15, 2018
  26. MiriamAteo

    MiriamAteo

    Joined:
    Sep 26, 2017
    Posts:
    17
    Unfortunately, that doesn't seem to have fixed the problem, unless I downloaded the wrong update. The only change is the use of the normalize function in the .cginc file, correct? The scale on my rigged meshes still affects fur length, and it gets especially noticeable with non-uniform scaling, because the fur also gets longer asymmetrically then.

    EDIT: Nevermind, I forgot to update the shader after copying over the new cginc (Unity does not do this on its own for some reason).

    Thanks for the update!
     
    Last edited: Feb 22, 2018
  27. metaverso

    metaverso

    Joined:
    Mar 16, 2013
    Posts:
    9
    Hello, is it working in WebGL? Can someone post a WebGL demo please? The one provided is not available anymore

    Thanks