Houdini 20.5 Solaris and Karma Karma User Guide

Karma User Guide Sampling:Karma CPU

On this page

Previous Sampling

Overview

Karma CPU offers a much wider array of sampling controls compared to Karma XPU. By default it uses a sophisticated adaptive sampling approach for both primary and secondary rays. It also supports Path Traced convergence, like Karma XPU. With Karma CPU, the additional controls are largely related to secondary samples and noise levels with both convergence modes.

Automatic convergence

By default, Karma CPU is setup to use Automatic convergence. It is generally works well and offers more controls to reduce noise to control over-sampling or under-sampling your renders.

Primary Sample Controls

Secondary Sample Controls

  • Primary Samples

  • Pixel Oracle

  • Min/Max Secondary Samples

  • Indirect Samples Quality (Per-lobe quality)

  • Light Sampling Quality

For every primary sample that hits an object, Karma will fire secondary samples. Karma will trace at least one ray for each type of lobe the shader produces (diffuse, reflection, refraction, sss and/or volume). Karma will send secondary rays until the Max Secondary Samples value is reached, or the variance falls below the threshold.

Karma provides an addition set of Indirect Sample Quality controls. You can use these to reduce noise in specific lobes. The values are multipliers for the Min/Max Secondary Sample values, but only apply to each specific ray type.

Path traced convergence

In Path Traced convergence mode, the only controls are Path Traced Samples and the settings on the selected Pixel Oracle. The expected range of values is larger compared to Automatic mode, so the parameter uses a different name to help reduce confusion.

Primary Sample Controls

Secondary Sample Controls

  • Path Traced Samples

  • Pixel Oracle (Karma CPU only)

  • Light Sampling Quality

In this mode, when a primary ray hits an object, Karma will send two secondary samples by default: one direct sample toward a light, and one indirect sample into the scene. This simplicity can make Path Traced convergence very fast and interactive initially, but offers very few controls for resolving noise from specific secondary ray types in the scene. Light Sampling Quality will determine the number of times each light is sampled, but Karma decides how many lights to sample, based on the Light Sampling Mode. Karma also randomly chooses the indirect sample lobe.

Note

In interactive viewport rendering, Karma does some path tracing for the first few samples, before switching over to automatic convergence. This improves the interactive experience in Solaris.

Next steps

With an understanding of how sampling works in Karma CPU, next we’ll look at some practical tips to reduce noise in your renders.

Karma User Guide

Appendices