Hair/fur effect solutions and integration

Well, it’s pretty obvious what this post is going to be about, but here it goes. Why are some of the latest techniques in hair and fur simulation not easily ported or integrated into Unity yet? I was expecting there to be at least 2-3 really good solutions on the asset store that I could simply purchase and start using, but I’ve found zero so far (just a few shaders that fake it really).

I’ve looked at both Nvidia’s Hairworks and AMD’s TressFX so far as well. It looks like no one has successfully integrated Hairworks for the masses yet (although I’ve seen some attempts). And I have seen one integration of TressFX into Unity so far, but I havn’t tried it yet (if it’s possible I will of course).

Anyways, just kind of pondering this subject now. Would love to have excellent fur and hair simulations available in Unity. So I was just wondering what is it about Unity itself that is keeping a lot of people from successfully doing so? Any thoughts?

Simply put Unity is focused on other aspects at the moment. Hair and fur simulation is not exactly a high priority for most games and is far less valuable than the other changes currently making their way through.

Yes, but aside from Unity itself making an implementation, what about third parties? I was kind of expecting and assuming that Unity as a whole would not implement something like this for a long time.

As far as hair simulation goes, yes absolutely I can’t wait for the day when newer style hair systems are easy enough to use in Unity and work on a wide range of systems.

In the mean time…

Fur-wise, if you’re ok with shorter fur, then FurFX in the Asset Store is pretty cool. It’s not perfect, but it gets some nice results, again for shorter fur. You can see a screenshot of one of my characters using it in this thread (a couple of posts down). It looks even better in motion, the way light plays on it, etc. I’m happy with the results for short fur but hell yeah longer fur would be great.

1 Like

Ya that’s one of the shader solutions I was thinking about in my original post Ony. I will probably have to live with something like that for now, in practicality. But, like you said, was hoping for a more robust solution.

I’m sure it will come, in time. Sometimes I just like to put my “wishlist” out there, and make it known that it’s something I’m wanting – that way Unity might get the hint and implement it in Unity 6.0 or something like that :stuck_out_tongue:

1 Like

Saw this a while ago, it integrates Nvidia HairWorks. Or was this what you saw before?

It looks pretty good, especially the example gif.

I haven’t tried playing with it at all yet though. Looks like it might be a bit cumbersome to set up unfortunately. I think you need either 3dsMax or Maya to author the hair.

2 Likes

Oh nice. I had come across that before, but I didn’t think they actually got it to fully work in the end. Maybe they have since then? If so, excellent.

You’re right though. From everything I hear, it takes a lot of work to properly set up the model to even work with the system in the first place. That is really cool though. I’ll look into that more. Thanks for sharing that.

1 Like

I was modifiying hairworks integration.

Texture supported , Shadow receive supported , fxied Lack . But still does not shadow casting. shadowcasting is too heavy for visual effect.

Wow really? That’s cool. Hmm I was hoping shadows could work. Maybe there’s some other way to do it?

Anyways, nice work kite3h. Were you able to put it up on github at all?

Yeah I didn’t really notice the hair there. I’m shallow.

4 Likes

lol I didn’t even look at the video until just now to be honest. Not sure if that’s forum appropriate after seeing it. :hushed: There’s probably better ways to show off the hair.

1 Like

Patches of hair with some simple physics joints can look as good while keeping a better performance

1 Like

About fur, the old school shells technique can look great with a ton of shells. The shader is also fairly easy to write.

It’s what the neofur guys are doing with Unreal. https://forums.unrealengine.com/showthread.php?62491-Neo-Fur-WIP-Fur-Solution

Overlaping Shell technique is too heavy overhead.
Also Cloth & Physcis can’t represent style. Hairworks or TressFX has tip stiffness. It is very important parameter for hair.

It is the cheapest and faster technique in terms of processing.

IIRC the issue with hair in unity was that you either had to resort to alpha-testing to cut out transparent regions, which resulted in ugly edges on hair polygons OR you need to babysit rendering order for hair. So, in case of layered hair you’d need to go from backfacing outermost layer to backfacing innermost layer, then from frontfacing innermost layer to outermost layer. Then you’d hit “I wanna cast shadow on semi-transparent object!” issue. Good luck if each layer is separate object.

Since the engine doesn’t exactly let you control the order in which things are rendered and can’t depth sort individual polygons, it was major pain.

With that in mind, it doesn’t surprise me that some games prefer sculpted polygonal hair instead.

That’s not exactly what that technique is about though. It’s mostly for fur/grass, and that is always renderer bottom to top, so it works fine with either alpha blending or testing. It’s an old school technqiue. If you go overboard with it, the results look kinda nice (although you can easily kill the fillrate), otherwise it’s a cheap technique as well.

But other than that, yeah, transparencies and sorting orders are a pain, but that’s true for all engines.

It works great in Black Desert game and it’s character editor, so perhaps more important are the tools.

Is it this?

I am seeing sorting errors here.

In any case, I said it’s a pain, not that it’s impossible.

Yeah, I know. Model’s polygon is “extruded” (meaning they get rendered at incremintally increasing offset several times) along face normal, each layer is cut based on texture’s alpha giving appearance of depth. That one, right?

I think the first demo appeared in early 2000s. Just sorta got sidetracked into complaining about transparency sorting issues.

1 Like