Directional Lights

The basics of undestanding directional lights.

Directional_LightHeader.png

The Directional Light simulates light that is being emitted from a source that is infinitely far away. This means that all shadows cast by this light will be parallel, making this the ideal choice for simulating sunlight. The Directional Light when placed can be set to one of three Mobility settings:

  • Static - (pictured left) which means that the light cannot be changed in game. This is the fastest method for rendering and allows for baked lighting.

  • Stationary - (also pictured left) which means the light will only have its shadowing and bounced lighting from static geometry baked by Lightmass, all other lighting will be dynamic. This setting also allows for the light to change color and intensity in game, but, it does not move and allows partial baked lighting.

  • Moveable - (pictured left) which means the light is totally dynamic and allows for dynamic shadowing. This is the slowest in terms of rendering but allows for the most flexibility during gameplay.

Below you will see a representation of sunlight being cast through an opening in a roof.

Directional Light

Directional Light Shadow Frustum

The left image shows just the light, the right image has its Shadow Frustum enabled in order to see that the Directional Light is casting parallel light rays.

Light Direction (pictured left) is indicated by an arrow that points in the direction the light will emit which is useful for placing and orientating your light as needed.

Directional Light Properties

The properties of a Directional Light are broken up into 5 categories: Light, Light Shafts, Lightmass, Light Function and Cascaded Shadow Maps:

Light

Property

Description

Intensity

Total energy that the light emits.

Light Color

The color that the light emits.

Used As Atmosphere Sun Light

Uses this Directional Light to define the location of the sun in the sky.

Affects World

Disables the light completely. Cannot be set at run time. To disable a light's effect during runtime, change its Visibility property.

Casts Shadows

If the light casts shadows.

Indirect Lighting Intensity

Scales the indirect lighting contribution from the light.

Min Roughness

Min roughness effective for this light, used for softening specular highlights.

Shadow Bias

Controls how accurate the shadows from this light are.

Shadow Filter Sharpen

How much to sharpen shadow filtering for this light.

Cast Translucent Shadows

Whether this light is allowed to cast dynamic shadows through translucent objects.

Affect Dynamic Indirect Lighting

Whether the light should be injected into the Light Propagation Volume.

Cast Static Shadows

Whether this light casts static shadows.

Cast Dynamic Shadows

Whether this light casts dynamic shadows.

Affect Translucent Lighting

Whether the light affects translucency or not.

Light Shafts

Property

Description

Enable Light Shaft Occlusion

Whether to occlude fog and atmosphere inter scattering with the screen space blurred occlusion from this light.

Occlusion Mask Darkness

How dark the occlusion masking is, a value of 1 is no darkening.

Occlusion Depth Range

Everything close to the camera than this distance will occlude the light shafts.

Enable Light Shaft Bloom

Whether to render light shaft bloom for this light.

Bloom Scale

Scales the additive bloom color.

Bloom Threshold

Scene color must be larger than this to create bloom in the light shafts.

Bloom Tint

What color to tint the bloom coming from the light shafts.

Light Shaft Override Direction

Can be used to make the light shafts come from somewhere other than the light's actually direction.

Lightmass

Property

Description

Light Source Angle

Angle that the directional light's emissive surface extends relative to a receiver, affects penumbra sizes.

Indirect Lighting Saturation

A value of 0 will completely desaturate this light in Lightmass, 1 will be unchanged.

Shadow Exponent

Controls the falloff of shadow penumbras.

Light Function

Property

Description

Light Function Material

The light function material to be applied to this light.

Light Function Scale

Scales the light function projection.

Light Function Fade Distance

The distance at which the light function should be completely faded to the value in Disabled Brightness.

Disabled Brightness

Brightness factor applied to the light when the light function is specified but disabled, say from the property above: Light Function Fade Distance.

Cascaded Shadow Maps

Property

Description

Dynamic Shadow Distance MovableLight

How far Cascaded Shadow Map dynamic shadows will cover for a movable light, measured from the camera.

Dynamic Shadow Distance StationaryLight

How far Cascaded Shadow Map dynamic shadows will cover for a stationary light, measured from the camera.

Num Dynamic Shadow Cascades

Number of cascades to split the view frustum into for the whole scene.

Cascade Distribution Exponent

Controls whether the cascades are distributed closer to the camera (larger exponent) or further from the camera (smaller exponent).

Cascade Transition Fraction

Proportion of the fade region between cascades.

Shadow Distance Fadeout Fraction

Controls the size of the fade out region at the far extent of the dynamic shadow's influence.

Use Inset Shadows for Movable Objects

(Stationary lights only) Whether to use per-object inset shadows for movable components, even though cascaded shadow maps are enabled.

Atmosphere and Cloud

Directional Lights support the Sky Atmosphere and the Volumetric Clouds features of Unreal Engine.

Additional information and demonstration can be found in the Volumetric Clouds page under the Directional Light Interactions and Shadowing section.

Property

Description

Atmosphere and Cloud

Atmosphere Sun Light

Whether the Directional Light can interact with the atmosphere, clouds and generate a visual sun disk, all of which compose the visual sky.

Cast Shadows on Clouds

Whether the light should cast any shadows from opaque meshes onto clouds. This is disabled for any secondary Directional Lights that have Atmosphere Sun Light enabled and set to Atmosphere Sun Light Index of 1, such as another sun or as a moon light.

Cast Shadows on Atmosphere

Whether the light should cast any shadows from opaque meshes into the atmosphere when a SkyAtmosphere is used.

Cast Cloud Shadows

Whether the light should cast any shadows from the clouds onto the atmosphere and other scene elements.

Cloud Scattering Luminance Scale

Scales the light contribution when scattered in cloud participating media. This can help counter balance the fact that our current multiple scattering solution is only an approximation.

Advanced Properties

Atmosphere Sun Light Index

Two atmosphere lights are supported at any time to represent the sun and moon, or two suns. Use this index to set the primary and secondary light source. For example, the sun would be 0 and the moon would be 1.

Atmosphere Sun Disk Color Scale

A color multiplied with the sun disk luminance.

Per Pixel Atmosphere Transmittance

Whether to apply atmosphere transmittance per pixel on opaque meshes instead of using the light's global transmittance.

Cloud Shadow Strength

The strength of the shadow. Higher values will block more light.

Cloud Shadow on Atmosphere Strength

The strength of shadows on the atmosphere. When set to 0, shadows on the atmosphere is disabled.

Cloud Shadow on Surface Strength

The strength of shadows on opaque and transparent meshes. When set to 0, shadows on opaque and translucent surfaces is disabled.

Cloud Shadow Depth Bias

Controls the bias applied to the front shadow depth of the volumetric cloud shadow map.

Cloud Shadow Extent

The world space radius of the cloud shadow map around the camera. Measured in kilometers (km).

Cloud Shadow Map Resolution Scale

Scales the cloud shadow map resolution. The resolution is clamped by r.VolumetricCloud.ShadowMap.MaxResolution.

Cloud Shadow Ray Sample Count Scale

Scales the number of samples used for shadow map tracing. The sample count resolution is clamped with r.VolumetricCloud.ShadowMap.RaySampleMaxCount.

This page was written for a previous version of Unreal Engine and has not been updated for the current Unreal Engine 5.3 release.
Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Cancel