Sampling
Sampling settings are the main factor determining the image quality.
To render an image, AMD Radeon ProRender casts a number of ray samples for every pixel. As new sample values for the pixel are added, the sampling results are averaged to calculate the pixel color.
The image is rendered iteratively: with each new iteration, a new pixel sample is added, so the quality of the image is improved and the amount of noise is reduced. A greater number of samples produces a better result, but requires more time for the color computation.
Sampling Modes
AMD Radeon ProRender supports two sampling modes: adaptive sampling and fixed sampling.
Adaptive Sampling Mode
Adaptive sampling is the default mode used to sample pixels in AMD Radeon ProRender. Adaptive sampling is particularly useful if some image regions are noisier than others, when it is not practical to set the overall iterations rate high and thus oversample the less noisy regions. Instead, it is recommended to choose adaptive sampling.
Adaptive sampling uses the following three parameters to control the sample density for a pixel: Sampling Min, Sampling Max and Noise Threshold.
The Sampling Min value defines the guaranteed number of samples that every pixel in the image will receive. Once this minimum value has been reached, the noise variance of each pixel is calculated. Sampling for a pixel stops either when the noise becomes less than the Noise Threshold, or when the Sampling Max value is reached. Rendering of the image areas that have already reached the Noise Threshold will stop, thereby rendering the noisier areas faster. These calculations will add a bit of overhead, but this mode is recommended in most cases.
Fixed Sampling Mode
If all image regions appear equally noisy, you can instruct AMD Radeon ProRender to calculate samples for all pixels in a uniform fashion. To use this mode, set the Noise Threshold value to 0. In this case, the sample rate will be controlled using the Sampling Max parameter.
Sampling Min
The Sampling Min parameter is used for adaptive sampling only. It defines the minimum number of samples per pixel required. By changing this parameter value, you can control the overall guaranteed image quality before adaptive sampling is involved.
It is recommended not to set this value high, as this will slow down the rendering process. To achieve a clean image and save on rendering time, tune the Noise Threshold value instead.
Sampling Max
The Sampling Max parameter defines the maximum possible number of samples that a pixel may receive. In the case of adaptive sampling, the sampling will stop when this limit is reached, even if the noise is still greater than the noise threshold. If adaptive sampling is disabled, the Sampling Max value defines the uniform sample rate per pixel.
Noise Threshold
If set to a non-zero value, the Noise Threshold (also known as Adaptive Sampling Threshold) parameter enables adaptive sampling.
This parameter is used to determine whether additional samples will be calculated for a pixel. It describes how much variance there may be as new samples are added for the pixel. In other words, it measures how much noise is allowed for a pixel before sampling is stopped. The parameter’s value ranges from 0 to 1, where 0 means no noise (no variance) and 1 means all of the noise is allowed.
As new samples are cast, AMD Radeon ProRender checks how much the pixel has changed, and how much noise there is. If the noise is greater than the threshold, additional samples will be calculated, unless the Sampling Max limit has been reached. If the noise is less than the threshold, subsequent sampling for the pixel will stop.
The default noise threshold of 0.05 is a good preview value for most scenes. Lowering the threshold results in less noise per pixel and more time required to complete the render, while increasing the threshold value generally reduces the render time at the cost of the image quality.
If the parameter value is set to 0, adaptive sampling will be disabled. In this case, the number of samples per pixel will be controlled by the Sampling Max value. Setting the parameter value to 1 forces sampling to stop once the Sampling Min limit has been reached.