disk_light

Class

Light

Synopsis

The disk light shape simulates light from a circular area source (flat disk).

 

 


 

position
The position of the light.
direction
A vector specifying the direction that the disk light points in.
radius
The radius of the disk. Disk lights will always be circular. It is not possible to scale the width or height to create an ellipse. When rendering, Arnold stores a disk light as just a point and a radius. Any transforms are applied to the position, but not the radius.
matrix

Matrix to define the position, orientation, and scale of the light. Take into account we don't handle scaling in disk and cylinder lights.

color

The color of the light.

intensity

Intensity controls the brightness of light emitted by the light source by multiplying the color.

exposure

Exposure is an f-stop value which multiplies the intensity by 2 to the power of the f-stop. Increasing the exposure by 1 results in double the amount of light.

In Arnold, the total intensity of the light is computed with the following formula:

color * intensity * 2exposure

You can get the same output by modifying either the intensity or the exposure. For example, intensity=1, exposure=4 is the same as intensity=16, exposure=0.  Note: 20 = 1, not 0.

1 * 1 * 24 = 16

1 * 16 * 20 = 16

The reasoning behind this apparent redundancy is that, for some people, f-stops are a much more intuitive way of describing light brightness than raw intensity values, especially when you're directly matching values to a plate. You may be asked by the director of photography (who is used to working with camera f-stop values) to increase or decrease a certain light by 'one stop'. Other than that, this light parameter has nothing to do with a real camera's f-stop control. Also, working with exposure means you won't have to type in huge values like 10,000 in the intensity input if your lights have quadratic falloff (which they should).

If you are not used to working with exposure in the lights, you can simply leave the exposure parameter at its default value of 0 (since 20 = 1, the formula then simplifies to: color * intensity * 1).

cast_shadows

Enables the computation of shadows cast from the light. 


cast_volumetric_shadows

Determines if volumetric shadows will be computed. This option is not in Distant or Skydome Lights. 

Enabled
Disabled


shadow_density

Sets the shadow density, or strength. This controls how the shadow blends with the material on which the shadow is cast: a value of 1.0 produces an opaque, black shadow, and a value of 0.0 gives no shadow. Normally this would be 1.0. 


shadow_color

Sets the intensity of each color channel for shadows. Normally this would be black.


samples

Controls the quality of the noise in the soft shadows and direct specular highlight. The higher the number of samples, the lower the noise, and the longer it takes to render. The exact number of shadow rays sent to the light is the square of this value multiplied by the AA samples. A schematic of how light noise occurs in Arnold can be found here. 

Note that setting light samples to 0 disables the light.

Noise from lights can sometimes be difficult to diagnose, particularly if the light source is broad in comparison to the scene and the shadows have an extremely wide penumbra. In these cases, it can sometimes be mistaken for indirect diffuse noise. It highlights the necessity for testing noise raytype. This diagram shows how a light is traced in Arnold.

 

The example below shows specular highlights from area light sources. There are four spherical mesh light sources of varying size and color temperature. Underneath are four cubes with Standard shaders assigned to them with varying degrees of specular roughness. Note that more noise is apparent with smaller light sources. Increasing the number of light samples resolves the noise. 

Specular roughness from top to bottom: 0, 0.1, 0.2, 0.3

If the issue is noise in a specular highlight, you will need to confirm that the source is the direct light and not a secondary ray type (such as specular). This is easy to achieve by turning off global illumination; set the GI_diffuse_depth, GI_specular_depth, and GI_reflection_depth to zero (this essentially turns off all global illumination). If the noise is still there, we know it is the specular component of the illumination model. If the issue is shadow noise, then we can simply toggle ignore shadows in the Arnold render settings, and the noise will completely resolve.

The key, again, is to modify the sampling and observe the changes. Increasing the number of light samples should have an immediate and quantitive effect on the smoothness of the specular highlight and the shadow. If there is no change, light samples are not responsible for the noise.

Multiple importance sampling (MIS) is enabled by default in Arnold. The images below show the difference when rendering with and without multiple importance sampling.

normalize

If enabled, you will be able to tweak the shadow softness by changing the size (i.e., radius) of the light, without affecting the amount of emitted light. This is very handy for artistic control. Otherwise, if not enabled, the amount of emitted light is proportional to the light's surface area.


diffuse / specular / sss / volume

 Per-light scaling for Diffuse, Specular, SSS, and Volume. Weights scaling the light contribution to each of those components independently. Should be left at 1 to produce physically accurate results.

indirect

The relative energy loss (or gain) at each bounce. This should be left at its default value of 1.0 for physically meaningful results. Values bigger than 1 make it impossible for GI algorithms to converge to a stable solution.

max_bounces

The maximum number of times the energy from this light will be allowed to bounce in the scene. A Max Bounces value of 0 means that the light will only be part of the direct lighting computations, effectively disabling GI for this light. Note that this value works along with the global ray depth controls, so the default value of 999 bounces per light is just a theoretical maximum; in practice, the global ray depth limits are set much lower.


filters

Lights in Arnold can be extended by light filters to create attenuation, gobo or blocker effects. These are specific shaders that can be connected to the filters parameter.

aov

Per-light AOVs are available via a string parameter. Each light has an AOV parameter which writes out the light contribution to a separate AOV with a corresponding name. See also Light Path Expression AOVs.

volume_samples

The volume samples parameter handles the number of samples used to integrate the in-scattering from direct light. Like the "samples" parameter for surfaces, it is also a squared number.

spread

Emits light focused in the direction along the normal. The default spread value of 1 gives diffuse emission, while lower values focus the light more until it becomes almost a laser like beam at value 0. Currently fully focused laser beams at value 0 are not supported, there is always a small minimum spread. Low spread values can be noisier than the default high spread, so be careful when using them.

The animation below shows the effect when lowering the Spread value.

'Spread' value lowered from 1 (Quad light)

motion_start

The time at which the first motion key of the shape is sampled. Other motion keys must be uniformly spaced within this range. By convention, the times are frame relative. For example, start and end times -0.5 to 0.5 indicate that the motion keys were sampled midway between the previous and current frame, and the current frame and next frame. This is applied to cameras, lights, and shapes.

motion_end

The time at which the last motion key of the shape is sampled. Other motion keys must be uniformly spaced within this range. By convention, the times are frame relative. For example, start and end times -0.5 to 0.5 indicate that the motion keys were sampled midway between the previous and current frame, and the current frame and next frame. This is applied to cameras, lights, and shapes.

  • No labels