DirectionalLight
Inherits: Light < VisualInstance < Spatial < Node < Object
Directional light from a distance, as from the Sun.
Description
A directional light is a type of Light node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene to model sunlight or moonlight. The worldspace location of the DirectionalLight transform (origin) is ignored. Only the basis is used to determine light direction.
Tutorials
Properties
float | directional_shadow_bias_split_scale | 0.25 |
bool | directional_shadow_blend_splits | false |
ShadowDepthRange | directional_shadow_depth_range | 0 |
float | directional_shadow_max_distance | 100.0 |
ShadowMode | directional_shadow_mode | 2 |
float | directional_shadow_normal_bias | 0.8 |
float | directional_shadow_split_1 | 0.1 |
float | directional_shadow_split_2 | 0.2 |
float | directional_shadow_split_3 | 0.5 |
float | shadow_bias |
0.1 (parent override)
|
Enumerations
enum ShadowMode:
- SHADOW_ORTHOGONAL = 0 --- Renders the entire scene's shadow map from an orthogonal point of view. This is the fastest directional shadow mode. May result in blurrier shadows on close objects.
- SHADOW_PARALLEL_2_SPLITS = 1 --- Splits the view frustum in 2 areas, each with its own shadow map. This shadow mode is a compromise between SHADOW_ORTHOGONAL and SHADOW_PARALLEL_4_SPLITS in terms of performance.
- SHADOW_PARALLEL_4_SPLITS = 2 --- Splits the view frustum in 4 areas, each with its own shadow map. This is the slowest directional shadow mode.
enum ShadowDepthRange:
- SHADOW_DEPTH_RANGE_STABLE = 0 --- Keeps the shadow stable when the camera moves, at the cost of lower effective shadow resolution.
- SHADOW_DEPTH_RANGE_OPTIMIZED = 1 --- Tries to achieve maximum shadow resolution. May result in saw effect on shadow edges. This mode typically works best in games where the camera will often move at high speeds, such as most racing games.
Property Descriptions
float directional_shadow_bias_split_scale
Default | 0.25 |
Setter | set_param(value) |
Getter | get_param() |
Amount of extra bias for shadow splits that are far away. If self-shadowing occurs only on the splits far away, increasing this value can fix them.
bool directional_shadow_blend_splits
Default | false |
Setter | set_blend_splits(value) |
Getter | is_blend_splits_enabled() |
If true
, shadow detail is sacrificed in exchange for smoother transitions between splits.
ShadowDepthRange directional_shadow_depth_range
Default | 0 |
Setter | set_shadow_depth_range(value) |
Getter | get_shadow_depth_range() |
Optimizes shadow rendering for detail versus movement. See ShadowDepthRange.
float directional_shadow_max_distance
Default | 100.0 |
Setter | set_param(value) |
Getter | get_param() |
The maximum distance for shadow splits.
ShadowMode directional_shadow_mode
Default | 2 |
Setter | set_shadow_mode(value) |
Getter | get_shadow_mode() |
The light's shadow rendering algorithm. See ShadowMode.
float directional_shadow_normal_bias
Default | 0.8 |
Setter | set_param(value) |
Getter | get_param() |
Can be used to fix special cases of self shadowing when objects are perpendicular to the light.
float directional_shadow_split_1
Default | 0.1 |
Setter | set_param(value) |
Getter | get_param() |
The distance from camera to shadow split 1. Relative to directional_shadow_max_distance. Only used when directional_shadow_mode is SHADOW_PARALLEL_2_SPLITS
or SHADOW_PARALLEL_4_SPLITS
.
float directional_shadow_split_2
Default | 0.2 |
Setter | set_param(value) |
Getter | get_param() |
The distance from shadow split 1 to split 2. Relative to directional_shadow_max_distance. Only used when directional_shadow_mode is SHADOW_PARALLEL_2_SPLITS
or SHADOW_PARALLEL_4_SPLITS
.
float directional_shadow_split_3
Default | 0.5 |
Setter | set_param(value) |
Getter | get_param() |
The distance from shadow split 2 to split 3. Relative to directional_shadow_max_distance. Only used when directional_shadow_mode is SHADOW_PARALLEL_4_SPLITS
.
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_directionallight.html