Volumes - UFO scene

This 'making of' tutorial covers lighting and rendering volumes as well as some other issues when encountering certain kinds of noise in the render. This scene has the potential for 'fireflies' to appear as it includes small visible light sources, highly specular surfaces, and atmosphere_volume.

Scene Lighting

The scene is lit with an area_light with its light_shape set to disk (moonlight). The UFOs lights are geometry that have been converted to mesh lights. There is also a spot_light pointing underneath the UFO and an area light on the right side. Atmosphere_volume has been enabled in the MtoA Render Settings window.

Moonlit Clouds - Volume shader

Info: More information about rendering volumes as clouds can be found here.

Cloud shader assigned to a sphere that represents the cloud layer

Once rendered, the clouds should look like the image below:

Disk light representing Moonlight with atmosphere_volume enabled.

Noise

This scene suffers from a form of sampling noise commonly referred to as 'spike noise', or 'fireflies'. These are isolated, super bright pixels that jump around from frame to frame in an animation. This noise is very difficult to remove by simply increasing the number of samples in the renderer.

Fireflies appearing in the render (concentrated around the light and glossy specular metallic UFO material).

This scene has some contributing factors to noise such as highly specular surfaces, atmosphere_volume, and small light sources. We will look at ways of fixing these 'noise' issues below:

Mesh Light

The UFOs light's consist of geometry that has also been converted to a mesh_light. When a mesh_light is created, it is positioned in the same place as the geometry from which it was generated. This can be a problem when sampling light rays and shadow noise may appear. One way round this is to disable casts_shadows_ and receive_shadows for the geometry. Another solution is to move the light away from the object (see images below).

The mesh_light is generated in the same position as the mesh Moving the mesh_light away from the mesh can reduce noise

Rayswitch

Another way to reduce fireflies is to make the mesh invisible to specular glossy rays. This can be achieved with the ray_switch_shader shader. This method gives you control over any shaders that could be contributing towards the appearance of 'fireflies'. For example:

ray_switch shader No ray_switch shader

Visible in Diffuse/Specular

An alternative method to reduce noise is to disable Diffuse Reflection and/or Specular Reflection attributes for the mesh that is causing the noise. These attributes can be found in the Arnold attributes of the mesh.

Visible in diffuse & specular: Enabled (specular/diffuse noise). Visible in diffuse & specular: Disabled (no noise).

Clamp Sample Values

One option to reduce noise is to clamp the sample values of the rendered pixels. However, this will clamp the pixels for the entire image. One way around this would be to clamp the pixels for a particular shader. To do this:

Clamp -> Surface material attribute of the Shading Group of a standard_surface shader

The shading network should look like this:

Try lowering the 'Max' value in the 'Clamp Color Attributes'

No clamp Max clamp: 1

In the example below, the specular attribute of an Ai Standard has been connected to a Maya clamp node. The clamp node is then connected to the glossy attribute of the Ai Ray Switch shader. It will work as a secondary ray clamp instead of the general clamp in Render Settings window. This way you get the benefit of keeping your range in the direct highlights, but you can also control any secondary ray noise.

Atmosphere Volume Fireflies

In the image below you can see the effect that enabling atmosphere_volume has on the scene.

Enabling atmosphere_volume has introduced some 'fireflies' on the ground material. This material has some specular which is contributing to the fireflies. This is more noticeable in the foreground of the image. A simple way to reduce the 'fireflies' would be to reduce the amount of specular on the ground material. If this is not possible, increasing the specular_samples to 4 helps to remove the fireflies.

specular_samples: 2. Fireflies visible specular_samples: 4. No fireflies visible.