Reducing Noise In Blender Cycles Renders

What Causes Noise in Cycles Renders

Noise in Blender Cycles renders is caused by light paths with insufficient sample counts to clean up properly. Materials with complex shading utilizing many transparency, glossy, or subsurface scattering nodes require more samples per pixel to resolve properly. Indirect bounces introduce additional noise at each bounce, while caustics from focused light through glass produce notoriously noisy effects.

Light Paths and Sample Counts

The Cycles rendering engine in Blender works by tracing light paths from the camera, bouncing around the scene until reaching a light source. For each pixel sampled, multiple light paths are traced to determine an average color. More sample counts result in less noise, but increase render times. Insufficient samples lead to grainy renders.

Light paths with many bounces off glossy or transparent surfaces are especially prone to noise. Setting clamp levels and bounce limits can reduce noise from these complex paths at the cost of accuracy.

Materials with Complex Shading

Materials using layered texture nodes, transparency shaders, glossy shaders, and subsurface scattering can require high sample counts to resolve noise free. Simplifying such complex shading networks reduces noise. Baking down multilayered materials to single image textures also allows reducing per-pixel samples.

Nodes that introduce randomness like Voronoi texture can also add noise. Reducing the scale of such nodes helps mitigate this. Using the Vector input node also improves consistency over the Random input.

Indirect Bounces and Caustics

Light that reaches the camera after multiple diffuse bounces tends to get noisier with each bounce. Reducing the number of indirect diffuse bounces cuts down on this indirect noise. However, it may result in overly darkened areas receiving little direct light.

Caustics, or focused light rays passing through transparent surfaces, require an impractical number of samples to render cleanly. This effect can be disabled altogether, rendered in a separate layer, or replaced with a pre-rendered texture for efficiency.

Optimizing Render Settings to Reduce Noise

Noise can be mitigated at the render settings level before considering particular materials. Increasing sample counts, clamping light, reducing bounces, and using OpenImageDenoise are options accessible from the Cycles render properties.

Increasing Sample Counts

Higher sample counts naturally reduce noise by providing more light path data per pixel. However, exponentially higher samples are needed to clean up progressively noisier effects. Other optimization techniques should be used first before resorting to high sample counts.

That said, moderately increasing samples can help reduce grain in simpler scenes. Adaptive sampling starts low and increases selectively on noisy areas to get the best usage of samples.

Clamping Light and Reducing Bounces

Light paths with many glossy bounces tend to get very noisy and inefficient. Setting clamp levels limits brightness from paths exceeding a specified number of glossy bounces, cutting down on wasted samples.

Similarly, indirect light bounces can be limited altogether. While reducing realism, this cuts noise from secondary bounces proliferating in complex scenes. The tradeoff can improve render times significantly for less accuracy.

Denoising with OpenImageDenoise

OpenImageDenoise is a GPU based filter for removing noise from Cycles renders after completion. It can salvage low sample renders that would otherwise be too noisy. This avoids costly render times needed reach equal quality with samples alone.

Denoising works best on renders with some base level of sampling to start. Features get blurred losing detail when denoising extreme noise. Balancing samples and denoising is ideal for efficiency.

Smoothing Materials to Reduce Noise

Modifying materials is another way to reduce noise at its source, complementing optimizations to render settings. Simplifying shader nodes, baking complex shaders, and adding noise reduction nodes all help smooth materials.

Simplifying Complex Shading Nodes

Many layered shaders like glossy coats over transparency over subsurface scattering quickly grow noisy with depth. Simplifying the node tree by removing unnecessary layers, clipping roughness, or muting weak effect strengths streamlines sampling.

Procedural noise textures are also prone to noise like Voronoi for pores. These can be swapped out for image textures with pre-baked noise instead, for quick sampling with no variance.

Baking Complex Materials to Textures

Even after simplification, some materials may still be too complex to render efficiently. These can be baked down to image textures capturing the pre-calculated shader appearance.

Baking replaces costly per-pixel sampling with single texture lookup. The tradeoff is loss of some shader adjustments later, like changing light brightness or grazing angles.

Using Noise Reduction Nodes

Nodes that filter texture data like the Noise Reduction node smooth noise straight in shader nodes. This avoids the additional UV baking step to extract textures.

The tradeoff is that such filtering also softens details, while baking preserves more detail in output maps. Adjusting filter strength balances this. Denoising the final render also avoids per-material sample costs.

Compositing Tips for Dealing with Residual Noise

Noisy renders can be salvaged in post-production compositing steps. Typical techniques include layered rendering, masked touch-ups, and noise reduction node filters.

Multi-Layer Renders for Flexible Denoising

Rendering separate passes for noisy transparency or subsurface materials allows targeted denoising. This preserves clarity in clean beauty renders instead of blurring the entire image with global denoise filters.

Some noisy effects like caustics may be isolated on additional layers, facilitating more aggressive reduction touches later.

Masking Noisy Areas for Touch-ups

Areas still noisy after non-destructive denoising can be manually masked then blurred or desaturated. This final corrective step targeting only stubborn noise avoids detail loss across the entire image.

Masking out noise speckles followed by small area median blurs is a common technique for manual touch-up by compositing artists.

Controlling Noise with Filter and Blur Nodes

The Filter node offers automated Noise Reduction filtering to entire images or masked areas. This applies a smoothing convolution without manual painting masks or layers.

Alternatively, the Blur node can softly blend pixels with simple Gaussian or fast approximations. Blurring just the alpha channel hides residual noise speckles.

Example Node Groups and Render Settings for Low-Noise Renders

Below are some sample node group templates and render settings tailored for keeping noise low in common troublesome materials. These provide building blocks integrating the above techniques showing them in practice.

Glossy Coating Material with Clamped Light

This node group layers a clear coat over a base material, clamping glossy light paths to reduce reflective noise. Great for car paint or metal finishes.

[Node group code sample…]

Skin Material with Baked Subsurface Texture

A skin shader with the noisy subsurface scattering baked down to reusable textures for fast clean rendering, preserving high frequency diffuse detail.

[Node group code sample…]

Low Sample Count Render Settings

These render settings add OpenImageDenoise while keeping samples lower with light clamping and bounce limits for quicker previews.

[Node group code sample…]

Leave a Reply

Your email address will not be published. Required fields are marked *