On this page |
Previous Sampling
Overview ¶
This chapter contains strategies and workflows for reducing noise in Karma. It expands on in the concepts in sampling. This chapter discusses both Automatic and Path Traced convergence modes.
Identifying noise ¶
When looking at a noisy render, the first task is to identify the source of the noise. Many factors can affect the perceived noise in a render, making it difficult to identify where the noise is coming from. You can add AOVs (Render Vars) to inspect the various samples and figure out where the noise is coming from.
Karma Render Properties has a Quick Setup called Optimization AOVs. Applying this setup adds various AOVs which are helpful when identifying the source(s) of noise.
AOVs for Analyzing Noise
|
rgba |
Beauty image. Identify aliased outlines, which would call for more pixel samples. |
|
float |
Identify slow-rendering objects, which might need object-specific properties, or other optimizations. |
|
int |
Can be used to determine if Max Secondary Ray samples is being reached or not. |
|
int |
How the Pixel Oracle is affecting the primary/path traced samples. |
|
rgba |
Direct diffuse samples. |
|
rgba |
Direct emissive samples. |
|
rgba |
Direct reflection samples. |
|
rgba |
Direct volume samples. |
|
rgba |
Refractive surfaces. |
|
rgba |
Indirect diffuse samples. Emissive geometry set to Treat As Light Source will be included here. |
|
rgba |
Indirect emissive samples. These rays come from emissive materials (as long as Treat As Light Source is off). |
|
rgba |
Indirect reflection samples. |
|
rgba |
Indirect volume samples. Requires Volume Limit of 1 or higher. |
|
rgba |
Materials with sub-surface scattering. |
With these AOVs added, you can now inspect your render and identify which ray types are the source of your visible noise.
Note
Sometimes, an AOV by itself will appear much noisier than you would expect looking at the beauty image. Seeing the different passes in isolation is helpful, but they may not need to look perfectly clean in isolation. Most of the time, a clean beauty image is the goal, and noisiness of individual AOVs doesn’t matter.
Jump to the next chapter, if you are interested in tips specific to each render delegate. The rest of this page applies to both delegates.
Denoisers ¶
Denoisers can clean up the last bits of noise in renders. However, without sufficient sampling to begin with, denoisers usually filter out important details.
|
Automatically denoises renders as the images are written to disk. |
|
|
Runs the OIDN or Optix denoisers within a COP network. |
|
|
Command-line utility to denoise a given image. |
Note
An effective strategy when denoising is to render and denoise at 2× resolution. Because this quadruples the total number of pixels, you should also reduce the pixel samples by 25%. See Rebelway’s excellent overview for more details on this technique.
Karma currently ships with Intel’s OIDN fully functional out of the box. Support for NVidia’s Optix Denoiser is also available.
General tips ¶
Interiors ¶
-
Use Portal Lights to focus more samples across dome lights.
-
Try removing lights from the light tree, especially if the scene has long, thin rectangle lights. It can be better to just let Karma sample all of the lights in these cases.
Hair/Fur ¶
-
Path traced sampling can often be much faster than automatic convergence. There are so many curves, that the time spent trying to clean up secondary noise often gets out of control.
-
Roughness values below 0.1-0.2 on Hair or Fur shaders are likely to introduce a lot of noise. Try to keep roughnesses above that range, especially with Karma CPU.
Depth of Field ¶
-
Scenes with very strong depth of field may be faster to converge with path traced convergence and/or the uniform pixel oracle.
-
Denoising can also be more effective in scenes with strong depth of field.
Motion ¶
-
If the camera and/or objects in the scene are moving a LOT, path traced convergence and/or the uniform pixel oracle may improve render times.
-
Rendering multiple frames in the same process can improve render times. USD and Karma don’t need to re-compose and re-load everything just because the time has changed; moving frames only updates values. This can have a huge impact, especially in larger scenes with lots of layers and textures.
Materials ¶
-
Texture maps connected to opacity/transmission inputs can bring down quality/performance. Even if the map contains the same constant value, Karma has to do more work to sample the object.
Caustics ¶
-
Enabling True Caustics requires more samples to resolve noise. You may also need to raise Diffuse Limit and Color Limits, as well as rely on Indirect Guiding.
Next Noise: Karma CPU
Next Noise: Karma XPU