Unified Sampling Redux
As a simplified look at using Unified Sampling as a more “brute force” method that was outlined here; the below example outlines the differences in time and sampling on a visually trivial scene. This should make some things very easy to understand and quick to read before moving on to lights. 😉
In a glossy scene originally rendered at HD 1080, the first frame was rendered with the following settings using all mia_material_x shaders.
Samples Min 1.0
Samples Max 800
Reflection Bounces 2
Shadow Bounces 2
Resulting Time: 48 minutes
In a second test I added these settings:
Error Cutoff 0.04
Resulting Time: 35 minutes
The images appeared to be identical to the eye. I ran imf_diff to analyze actual pixel differences with this result:
differing pixels: 0.379% (7869 of 2073600)
average difference: 1.265%
maximum difference: 4.632%
Summary: Some pixels differ slightly.
== "glossyA.exr" and "glossyB.exr" are similar
So I am pretty happy with the fact that the time savings of 13 minutes resulted in no observable difference.
Below is an explainer graphic of the glossy rays count set for each sphere.
Below is the Samples Diagnostic framebuffer (tonemapped to work on the internet). You can see that the more “brute force” the reflection rays settings, the harder Unified Sampling had to work.
Below is the time buffer where the longer it takes to render a pixel, the brighter the resulting pixel in the time buffer.
You may also have a better understanding of how Unified will perform consistently across a scene with a single Quality parameter when given a wide range between minimum and maximum samples.(These spheres resemble one another despite having large changes in reflection gloss rays.)
Despite these results you might still notice a little grain on the pure brute force sphere. Add a texture map and you’ll hardly notice but is there a reasonable balance in a more complex scene?
If you need a completely smooth scene where there are few textures and more of a “pure” shader effect, then small increases seem to work well without sacrificing extra time. 2-4 samples works well for this in those special cases. But we find that animation and VFX work do not need this level of detail. This would be for something like print work and large resolutions.
Next we might take a look at lights and how to use them in similar circumstances.