Radeon ProRender


The coating component is used to create a finish layer, like paint or varnish, on top of other materials. It can also be added as a second specular layer, on top of the reflection component.

The coating layer combines the material’s properties of reflectivity with those of transparency. A clearcoat layer reflects some amount of light, and at the same time allows the light pass through it, reach the layer underneath and get reflected off that or be absorbed.

Typical examples of coating materials are furniture varnish, enamel, ceramic glaze and car paints. Coating can also be used to simulate glossy plastic, laminated objects, wet and oily surfaces, or sheen effect on leather or skin.

In AMD Radeon ProRender, the coating component can be controlled using the following parameters:

Coating Color

The coating color determines the color of the light reflected from the surface. It can also be used to add a color tint to reflections on the coating layer.

To create plausible materials, it is recommended to use a white or gray coating color. In this case, reflections will look more intense and more physically correct. To add a tint to the coating layer, use the transmission color instead.

The input type for this parameter is a color.

Coating color: white

Coating color: yellow

Coating color: blue

Coating Weight

The coating weight is a scaling factor that defines how coating parameters contribute to the overall appearance of the material. Smaller coating weight values produce less reflections on the material surface, while greater values amplify coating properties.

The input type for this parameter is normally a value from 0 to 1. The default weight is 1.


The maximum value of 1 is a soft limit. To increase the weight factor, you can specify a greater value. Note, however, that a value greater than 1 will most likely distort the physical correctness.

Coating weight: 0

Coating weight: 0.5

Coating weight: 1

Coating Roughness

The coating roughness defines the glossiness of the coating layer. Coating with zero roughness means a perfectly smooth surface with sharp and crisp specular reflections. Increasing the roughness values results in a more matte and rough appearance with dimmer and more blurry reflections. With high roughness values, the light is scattered in more directions, and the surface properties are closer to diffuse.

The input type for this parameter is a value from 0 to 1. You can use a bump map to mimic varied roughness of the material.

Typical roughness values for this layer are low. The default coating roughness is 0.01.

Coating roughness: 0

Coating roughness: 0.25

Coating roughness: 0.5

Coating IOR

The IOR (index of refraction) defines the refractive behavior of the material. The coating IOR is used to calculate the reflection intensity of the surface taking into account the viewing angle and material refraction index, as per Fresnel’s theory. For details of Fresnel reflectance, see The theory of Physically-Based Rendering and Shading.

The input type for this parameter is normally a value from 1 to 3. The default IOR value is 1.5, which is the same as the glass refraction index. For IOR values of other materials, use online resources, such as this IOR List.


You can use values smaller than 1 or greater than 3 if necessary. However, to simulate physically correct materials, it is recommended to use the known IOR values of these materials.

The images below illustrate how reflectivity is calculated based on the IOR of real-world materials, such as water, glass and crystal.

Coating IOR: 1.33 (water)

Coating IOR: 1.5 (glass)

Coating IOR: 2 (crystal)

Coating Thickness

The coating thickness defines how thick the coating layer is. This parameter is used in combination with the coating transmission color. The thicker the coating, the more saturated is the transmission color in the coating layer, and less light is allowed down to the layer underneath.

The input type for this parameter is a numeric value. The soft range is from 0 to 10, but you can use a value greater than 10. The default thickness value of 0 disables the transmission color. You can also use a bump map to define coating thickness that varies with the position.

The images show how the intensity of the red transmission color increases as the coating thickness is increased.

Coating thickness: 0

Coating thickness: 1

Coating thickness: 5

Coating Transmission Color

The coating transmission color defines the color of the light that travels through the coating layer. The transmission color allows simulation of the tint of the coating, for example, a yellowish tint to varnish on furniture.

The input type for this parameter is a color.

Overlaid on top of another color, tinted coating changes the color of the base material. It absorbs certain colors and reflects others acting as a color filter. The resulting color is a mixture of the transmission color and the color of the layer underneath. A white transmission color does not change the color of the base material.

Transmission color: white

Transmission color: blue

Transmission color: magenta

Coating Normal

The coating normal defines what normal map will be used by the coating layer of the material. By default, all the layers use the normal map that is defined with the shader’s Normal component. However, you can also provide a separate normal map for the coating layer.

The coating normal parameter supports the same input types as the shader’s Normal component.

The normal coating can be used to simulate scratches, paint scuffs and irregularities on the top coating layer or achieve a convincing worn-out effect. Compare how the sharpness of reflections changes when small imperfections are added to the coating layer with a normal map.

No coating normal

Coating normal