Sampling

Reference

Panel

Render ‣ Sampling

The integrator is the rendering algorithm used to compute the lighting. Cycles currently supports a path tracing integrator with direct light sampling. It works well for various lighting setups, but is not as suitable for caustics and some other complex lighting situations.

Rays are traced from the camera into the scene, bouncing around until they find a light source such as a light, an object emitting light, or the world background. To find lights and surfaces emitting light, both indirect light sampling (letting the ray follow the surface BSDF) and direct light sampling (picking a light source and tracing a ray towards it) are used.

Integrator

There are two sample methods that can be used: Path Tracing and Branched Path Tracing.

Path Tracing

The Path Tracing integrator is a pure path tracer; at each hit it will bounce light in one direction and pick one light to receive lighting from. This makes each individual sample faster to compute, but will typically require more samples to clean up the noise.

Branched Path Tracing

The non-progressive Branched Path Tracing integrator offers finer control over sampling. It is similar to Path Tracing, but at the first hit it will split the path for different surface components and will take all lights into account for shading instead of just one.

This makes each sample slower, but will reduce noise, especially in scenes dominated by direct or one-bounce lighting. To get the same number of diffuse samples as in the path tracing integrator, note that e.g. 250 path tracing samples = 10 AA Samples × 25 diffuse samples. The Sampling panel shows this total number of samples.

Render

Number of paths to trace for each pixel in the final render. As more samples are taken, the solution becomes less noisy and more accurate.

When using Branched Path Tracing, this changes the AA Samples which are multiplied by the Sub Samples and improve Anti-aliasing.

Viewport

Number of samples for viewport rendering. Setting this value to zero enables indefinite sampling of the viewport.

Viewport Denoising

Removes noise while previewing scenes in Rendered mode in the 3D Viewport. Denoising can also be enabled for the final render in the View Layer Properties. The sample value which denoising can be applied on to can be configured in the Viewport Performance properties.

None

Do not denoise the 3D Viewport.

OptiX AI-Accelerated

Uses an artificial intelligence algorithm to remove noise from renders. It is based on the OptiX acceleration engine and therefore has the same GPU requirements as rendering with Optix.

Sub Samples

The panel is visible only when using Branched Path Tracing.

Diffuse

Number of diffuse bounce samples to take for each AA sample.

Glossy

Number of glossy bounce samples to take for each AA sample.

Transmission

Number of transmission bounce samples to take for each AA sample.

AO

Number of ambient occlusion samples to take for each AA sample.

Mesh Light

Number of mesh light samples to take for each AA sample.

Subsurface

Number of subsurface scattering samples to take for each AA sample.

Volume

Number of volume scattering samples to take for each AA sample.

Adaptive Sampling

With adaptive sampling Cycles automatically reduces the number of samples in areas that have little noise, for faster rendering and more even noise distribution. For example hair on a character may need many samples, but the background may need very few.

By default, the threshold to stop sampling pixels is adapted to the number of AA samples. This reduces overall render time, and particularly after denoising the result will be almost indistinguishable.

Adaptive sampling also makes it possible to render images with a target amount of noise. This is done by settings the Noise Threshold, typical values are in the range from 0.1 to 0.001. Then render samples can then be set to a high value, and the renderer will automatically choose the appropriate amount of samples.

Noise Threshold

The error threshold to decide whether to continue sampling a pixel or not. Typical values are in the range from 0.1 to 0.001, with lower values meaning less noise. Setting it to exactly 0 lets Cycles guess an automatic value for it based on the total sample count.

Min Samples

The minimum number of samples a pixel receives before adaptive sampling is applied. When set to 0 (default), it is automatically set to the square root of the total (max) sample count.

Advanced

Seed

Seed value for integrator to get different noise patterns.

Animate Seed (clock icon)

Changes the seed for each frame. It is a good idea to enable this when rendering animations because a varying noise pattern is less noticeable.

Pattern

Random sampling pattern used by the integrator.

Sobol

Uses a Sobol pattern to decide the random sampling pattern used by the integrator. See Sobol sequence on Wikipedia for more information.

Correlated Multi-Jitter

Uses a correlated multi-jitter pattern to decide the random sampling pattern used by the integrator. See this Pixar paper for more information.

Progressive Multi-Jitter

Uses a progressive multi-jitter pattern to decide the random sampling pattern used by the integrator. Its advantage is to provide a well distribution of samples over iterating sample counts. Because of its good distribution over a range of different sample counts, this sample pattern is used for Adaptive Sampling. See this Pixar paper for more information.

Square Samples

Square the amount of samples.

Min Light Bounces

Minimum number of light bounces for each path, after which the integrator uses Russian Roulette to terminate paths that contribute less to the image. Setting this higher gives less noise, but may also increase render time considerably. For a low number of bounces, it is strongly recommended to set this equal to the maximum number of bounces.

Min Transparent Bounces

Minimum number of transparent bounces. Setting this higher reduces noise in the first bounces, but can also be less efficient for more complex geometry like hair and volumes.

Light Threshold

Probabilistically terminates light samples when the light contribution is below this threshold (more noise but faster rendering). Zero disables the test and never ignores lights. This is useful because in large scenes with many light sources, some might only contribute a small amount to the final image, and increase render times. Using this setting can decrease the render times needed to calculate the rays which in the end have very little affect on the image.

Sample All Direct Lights

When enabled, Cycles will sample all lights in the scene for direct bounces, instead of randomly picking one. Disabling this can improve the performance, but will need a lot of Samples, to clear up the render.

Visible only when using Branched Path Tracing.

Sample All Indirect Lights

Similar to direct light, but for indirect lights. This can reduce noise in scenes with many lights.

Visible only when using Branched Path Tracing.

Layer Samples

When render layers have per layer number of samples set, this option specifies how to use them.

Use

The render layer samples will override the set scene samples.

Bounded

Bound render layer samples by scene samples.

Ignore

Ignore render layer sample settings.