View Full Version : MR is inefficient at sampling curves?

11 November 2005, 08:12 AM
I'm working on this scene and from doing test renders I've found that the black curves on the floor in the pic below take about 35% of the time to render this scene. This seemed rather oddly long because those curves are just plain mi lambert shaded black surfaces. In comparison, those desks and chairs that have dielectric or some level of reflection on all surfaces takes up about 9% of the render time. The stairwell in the back which is entirely dielectric takes up about 8% of the render time.

After fooling with it some more I've discovered that what takes so long is the fact they are actually just perfectly rounded curves extended quite a ways. Because putting different shaders on the curves didnt change the render time much at all. From what I can tell when MR does the sampling on these curves it just takes absurdly long in comparison to straight edges.

Is this just how it is? or am i doing something wrong? Why do the curves take so long to render? Is there anyway to make curves like that render faster? My BSP settings are correct, I tested that thoroughly as well. The percentages stay just about the same for all min/max sampling settings and contrast ratios.

BTW I tried making the curves out of both polygons and NURBS with various surface sample settings. It didn't change the render time by more than 1%, so it doesn't have anything to do with polycount either. (

11 November 2005, 11:55 AM
My only thought is that perhaps some part of MR is not coping with the fact that they're existing in the same space as the floor. The sampler may be repeatedly testing for which surface should be visible. If you're using FG, GI or shadowmaps it may be confusing them too. Try raising them off the ground slightly or perhaps texturing them there instead?

11 November 2005, 01:29 PM
maybe using a projection ramp texture (set to circular with no interpolation) and map your floor textures to the ramp selected colors. May render slightly faster than having the extra geometery, g'luck

11 November 2005, 01:49 PM
There is clearly a lot of z-fighting going on. Object being on the very same plane probably screws up the BSP tree. Since you are using a lot of DGS shaders, a lot of rays are hitting the floor. Try offsetting the additional geometry on the floor by a small amount or integrate them into the floor geometry.

11 November 2005, 03:52 PM
Is it sampling or maybe non-view dependent approximation that is working too hard?

Does the sampling diagnostic image show a high density of samples on those curves?

Also, the rug-on-the-floor type of close geometry placement could make FG put more points than needed under the 'rug'. If using FG, what does the FG diagnostic indicate?

11 November 2005, 03:59 PM
And rather than speculate about BSP, there is also a BSP diagnostic.

Do those curves extend out well beyond our view of them?

What happens if you use large bsp?

If you actually hide the curves, does it reduce the render by the same amount?

11 November 2005, 01:03 AM
Thanks for the help guys, led me to the problem. Before I had the curves about .5 cm off the ground (room is 300 cm wide). Which led to that "z-fighting" I assume, didn't know such a thing existed. Combining the floor geometry all into one solid flat piece made it go the fastest. Only adds 7 seconds to the render time now rather than 30.

CGTalk Moderation
11 November 2005, 01:03 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.