Quality

AMD Radeon ProRender offers a number of settings to control the quality of the render.

Render Quality

For details, see the Full Spectrum Rendering in RPR for Blender section.

Max Ray Depth

When an image is rendered, multiple light rays are emitted through each pixel of the image plane. As they encounter obstacles, the light rays bounce around the scene contributing to the surface color and brightness, and this process might be as long as infinite, whereas for a decent render output, a limited number of ray bounces is usually sufficient.

In AMD Radeon ProRender, the number of times that a ray bounces off various surfaces before being terminated is controlled with the Max Ray Depth parameter.

Compare the image quality with the Max Ray Depth set to 1, 5, 10 and 20. The transparency and color of the object is improved with more ray bounces. When the value is set to 1, the object appears black because the surrounding light cannot reach the inner surfaces due to the low ray bounce value.

The appearance of a scene changes depending on the Max Ray Depth

Download the above scene (.blend)

Increasing the maximum ray depth results in more time taken to complete the rendering process. When looking for a compromise between the render time and the image quality, start with the defaults offered by the plug-in and experiment with bigger values. A good rule of thumb is to increase the Maximum Ray Depth if there is missing light or you feel there should be complex light paths in the rendered scene.

In AMD Radeon ProRender, the Max Ray Depth can be limited separately for different types of surfaces, such as diffuse, glossy, refraction, glossy refraction or shadow. This allows you to describe how many bounces light should take for various types of surfaces, and might be particularly useful for scenes with certain types of materials predominating, as this helps optimize the render time.

Total

The Total parameter limits the total number of ray bounces for all types of surfaces and components, whether they are diffuse, reflective or refractive. This threshold cannot be exceeded even if the sum of Max Ray Depth values for specific surfaces is greater than the specified total.

In general, the default value of 8 is suitable for most scenes, unless these scenes include translucent or complex materials. The soft Total limit ranges from 2 to 50, which is also true for all Max Ray Depth values. However, you can set a smaller or greater value manually.

Note

To enable caustics for refractive materials, set the Total value to at least 2. At a smaller value, no caustics effect will be present.

Diffuse

The Diffuse Ray Depth parameter controls the maximum number of times that a light ray can be bounced off diffuse surfaces. In general, greater Diffuse Ray Depth values make the scene brighter by providing more bounce light to the scene. It is rare to need a Diffuse Ray Depth value greater than 3, as this will usually have a negligible effect.

Compare the appearance of the scene as the Diffuse Depth Ray is increased.

Diffuse ray depth: 1

Diffuse ray depth: 2

Diffuse ray depth: 3

Download the above scene (.blend)

Glossy

The Glossy Ray Depth parameter controls the maximum number of ray bounces from specular surfaces. This value does not need to be large for scenes with rough surfaces, while for scenes with perfectly smooth and mirror surfaces the Glossy Ray Depth value needs to be increased to capture specular reflections.

See the number of reflections with the Glossy Ray Depth set to 1, 2 and 3.

Glossy ray depth: 1

Glossy ray depth: 2

Glossy ray depth: 3

Download the above scene (.blend)

Refraction

The Refraction Ray Depth parameter controls the maximum number of times that a light ray can be refracted, and is designated for clear transparent materials, such as glass.

The Refraction Ray Depth value should be set large for scenes with many nested transparent objects. The following examples demonstrate how an increase in the refraction ray depth affects the transparency of objects made of thick glass stacked one behind another. Note that for each object, the light ray is refracted twice: once upon entering the glass, and once upon exiting it.

Refraction ray depth: 2

Refraction ray depth: 4

Refraction ray depth: 8

Download the above scene (.blend)

Glossy Refraction

The Glossy Refraction Ray Depth parameter is similar to the Refraction Ray Depth parameter. The difference is that it is aimed at working with matte refractive materials, such as semi-frosted glass.

Glossy refraction ray depth: 3

Glossy refraction ray depth: 5

Glossy refraction ray depth: 7

Download the above scene (.blend)

Shadow

The Shadow Ray Depth parameter controls the accuracy of shadows cast by transparent objects. It defines the maximum number of surfaces that a light ray can encounter on its way causing these surfaces to cast shadows. Greater Shadow Ray Depth values produce softer and more accurate shadows but increase the rendering time.

Note

When passing through a voluminous object, a light ray encounters two boundaries: once upon entering the material, and once upon exiting it. Consider this when choosing the right Shadow Ray Depth value.

In the following example, there are three transparent layers between the light source and the ground plane that catches shadows. Notice how the accuracy of the shadows is changed as the Shadow Ray Depth value increases.

Shadow ray depth: 1

Shadow ray depth: 2

Shadow ray depth: 3

Download the above scene (.blend)

Ray Cast Epsilon

The Ray Cast Epsilon parameter determines an offset used to move light rays away from the geometry for ray-surface intersection calculations. The reflected ray starts at a certain distance from the surface rather than at the bounce-off point. This helps to avoid self-shadowing and lighting artifacts that are common for ray tracers and caused by roundoff error.

The ray cast epsilon distance is measured in millimeters. The default value is 0.02 mm, which is quite accurate for mid-scale scenes. However, for larger scenes involving distant objects or small-scale scenes, this value might need to be adjusted.

Tuning the ray cast epsilon parameter can also be useful for scenes where two or more materials are in contact, or where there is little to no space between meshes. The example below shows how changing the ray cast epsilon value affects the render result.

Download the above scene (.blend)

Clamping

The Clamp Radiance parameter limits the intensity, or the maximum brightness, of samples in the scene. Greater clamp radiance values produce more brightness.

Clamping is an effective method to prevent fireflies (hotpixels) without increasing the rendering time. Note that enabling clamping makes the lighting and reflections in the scene dimmer, and also affects the intensity of caustics. To find the desired balance between noise reduction and the overall scene appearance, it is recommended to start with a high clamp radiance value and decrease it step by step to a level where fireflies are no longer present.

Clamp radiance: 25

Clamp radiance: 10

Clamp radiance: 1

Download the above scene (.blend)

Pixel Filter (Anti-Aliasing)

The Pixel Filter is applied to remove the effect of aliasing — jagged and pixelated edges (colloquially referred to as ‘jaggies’) representing harsh transitions between adjacent colors in rendered images. Anti-aliasing helps smooth these transitions by applying a filter to calculate the average of pixel samples. In many cases, this will allow you to get rid of harsh edges you can see in some renders with no pixel filter set.

The way the pixel color is recalculated mainly depends on the type of the pixel filter and the filter width.

Filter

The Pixel Filter parameter defines the type of an anti-aliasing filter to use, and controls how sharply or smoothly the edges will be rendered.

Each filter is based on a curve (hence the filter names). The curve is applied to the pixel samples over the filter width to calculate the weight of each sample, or a degree to which each sample should influence the pixel color.

The following filters are available:

  • Box applies the same weight to all pixel samples, often producing low-quality, yet predictable results.

  • Triangle filter decreases the weight of samples linearly based on their distance from the pixel center, and produces sharp results.

  • Gaussian filter yields blurry results. It applies a Gaussian curve to the samples according to the distance from the pixel center.

  • Mitchell is the default filter, good for all-round rendering of images with no major high contrasts. It applies a Mitchell curve to the samples according to the distance from the pixel center. This filter yields sharper results than the Gaussian filter.

  • Lanczos is also good for all-round rendering of images, and provides a good balance between smoothness and sharpness. This filter applies a Lanczos curve to the samples according to the distance from the pixel center.

  • Blackman Harris complements the Box and Gaussian filters, and is especially effective for wireframe renders, as it makes edges look smoother. It applies a Blackman Harris curve to the samples according to the distance from the pixel center.

Note

The results of applying different filters are often subjective and depend on the image itself.

The images below illustrate a simplified model with 3 pixels, 3 samples per pixel. Compare how the sample weight is distributed using the two simplest filter curves – Box and Triangle.

The Box filter gives an equal weight to all samples within the search area, which means that all samples will equally influence the resulting recalculated color (the colors will be averaged). The Triangle filter assigns the highest weight value to the center sample of pixel 2, and linearly lowers the weights based on the sample distance from the pixel center.

Width

The Width parameter controls the size in pixels from the center of the pixel (or the radius) of the filter area within which pixel samples will be considered for color recalculation.

The default value of 1.5 means that to calculate the color of pixel samples, AMD Radeon ProRender will take into account the pixel in question, starting from its center (0.5), as well as samples from all the neighboring pixels (1).

The following illustration shows the anti-aliasing effect with different pixel filters set.

Filters

Download the above scene (.blend)