Fur Subdivision Curves - Memory - Shading Quality

   2694   9   2
User Avatar
Member
36 posts
Joined: Sept. 2008
Offline
Fur Subdivision Curves now renders a lot faster, but it can consume a lot of memory. I was trying to find some sort of speed-quality trade off and the first thing that come to my mind was shading quality.

The thing is. Shading quality can take the memory consumption down, but it takes 3x more to render.

Is that right? Or could be a bug?
User Avatar
Member
1743 posts
Joined: March 2012
Offline
FabianoBerlim
Fur Subdivision Curves now renders a lot faster, but it can consume a lot of memory. I was trying to find some sort of speed-quality trade off and the first thing that come to my mind was shading quality.

The thing is. Shading quality can take the memory consumption down, but it takes 3x more to render.

Is that right? Or could be a bug?
It's because of the acceleration structure used for tracing rays, a BVH (Bounding Volume Hierarchy).

BVH's work great for most surfaces, because there's not a lot of overlap of bounding boxes of nearby faces. However, for dense hair, there can be a *lot* of overlap of the bounding boxes for adjacent curves, meaning that if the curves don't get split up, a huge number of bounding boxes will need to be checked when tracing a ray, even if it only goes anywhere near one of the curves. To mitigate that slowdown, the curve is effectively split by Mantra into many separate curves with separate, smaller bounding boxes, so that there's less overlap with the bounding boxes of nearby curves, at the expense of having more bounding boxes. It'll speed up the tracing of rays, but increase the memory usage, because there are more bounding boxes. The shading quality affects how many smaller curves the curves get split up into.

That's currently the tradeoff faced with any dense curve rendering in Mantra. There are several ideas that may avoid the issue down the road, but nothing is solidified yet.
Writing code for fun and profit since... 2005? Wow, I'm getting old.
https://www.youtube.com/channel/UC_HFmdvpe9U2G3OMNViKMEQ [www.youtube.com]
User Avatar
Member
36 posts
Joined: Sept. 2008
Offline
Thanks!

Your explanation is very enlighten.
User Avatar
Member
36 posts
Joined: Sept. 2008
Offline
Is there anything that can be done improve memory/speed?
Decrease shading quality and turn on predicing?
Motion factor?
Geometry measuring or Z-Importance?

Something to fit memory better and do a better bound calculation.
User Avatar
Member
948 posts
Joined: April 2008
Offline
I am experiencing some area patches of fur disappearing in certain frames from my character when I use curves subd any other curve type renders okay, is anyone else having this issue? Any tips?

Thanks!
https://vimeo.com/user2163076 [vimeo.com]
User Avatar
Member
1743 posts
Joined: March 2012
Offline
mzigaib
I am experiencing some area patches of fur disappearing in certain frames from my character when I use curves subd any other curve type renders okay, is anyone else having this issue? Any tips?
There isn't anything special about how subd curves are handled in that respect compared with NURBS curves. Does it happen consistently enough that you could file a bug for it?
Writing code for fun and profit since... 2005? Wow, I'm getting old.
https://www.youtube.com/channel/UC_HFmdvpe9U2G3OMNViKMEQ [www.youtube.com]
User Avatar
Member
948 posts
Joined: April 2008
Offline
I can't say for sure, what I can say is that depending the way my character deforms, let's say on the belly, in that region and always in the same frames the patches disappear when I say patch I mean a square region of fur but the same doesn't happen with “Polygon” curves, I didn't test with “Nurbs” yet.

So the problem is consistent in this case.
https://vimeo.com/user2163076 [vimeo.com]
User Avatar
Member
1743 posts
Joined: March 2012
Offline
If you can, please submit a bug [sidefx.com] with the scene/geometry! There definitely shouldn't be patches appearing or disappearing, and hopefully it'll be possible to track down, since it's happening consistently for you on certain frames.
Writing code for fun and profit since... 2005? Wow, I'm getting old.
https://www.youtube.com/channel/UC_HFmdvpe9U2G3OMNViKMEQ [www.youtube.com]
User Avatar
Member
948 posts
Joined: April 2008
Offline
Ok, I'll send soon as can.

Thanks.
https://vimeo.com/user2163076 [vimeo.com]
User Avatar
Member
948 posts
Joined: April 2008
Offline
I won't be able to post my file but I'll submit a bug anyway I am posting an image sample of my problem.

This is one of the frames I was referring to most of tem happens in the same region changing from smaller to bigger patches depending on the mesh deformation.

Attachments:
patch_issue.jpg (66.1 KB)

https://vimeo.com/user2163076 [vimeo.com]
  • Quick Links