DOF blurs away hair strands (groom)

I have these two images, one with the DOF effect, the second one is without.
image
image

Is there a way to improve DOF so it can catch every detail? The only solution that I’ve found is that Path tracing handles it pretty well. But it would be nice to make it work in the usual way.
It’s for cinematic purposes, so I don’t really care about optimization, I just need to make it work. Any ideas?

2 Likes

Did you find a solution? same issue. I have a bad idea, it maybe noticeable but works well on solid backgrounds.

r.HairStrands.DOFDepth 0

2 Likes

I did not find a solution on my own, unfortunately.
Just tried your command and it works amazingly well in my scenes, even without object behind (just sky). Thanks a lot for sharing it!
Maybe it is because I optimized my hair a bit using the interpolation technique.
Here’s how:
Change Decimations values in your groom’s asset to reduce vertices. I used the following values

Then increase Hair Width to make hair look like before, but just a bit thicker, visually it will be hard to tell the difference, but it will speed up your renders by a lot.
image

Please let me know if it helps. And also, what background you’re using?

1 Like

You may want to check out this rendering guide and specificly this document on rendering hair and fur. There are some instructiong on how to get around this for cinematic renders :slight_smile:

2 Likes

I Found the solution. It’s get complicated to render with level visibility and stencils layers. But I found another solution. Which is Cryptomatte. Turn on the plugin in rendering section. Enable object IDs in movie render queue, turn on disable multi sampling in differed render setting. Enable world depth map. Hit Render now you can choose your character/s and other objects individually in compositing process. Just add lens blur on your desired objects.


We have the same problem, but Cryptomatte makes full edges of groom, like “unlit”. How to reduce strands?