Light2D¶
Inherits: Node2D < CanvasItem < Node < Object
Casts light in a 2D environment.
Description¶
Casts light in a 2D environment. Light is defined by a (usually grayscale) texture, a color, an energy value, a mode (see constants), and various other parameters (range and shadows-related).
Note: Light2D can also be used as a mask.
Tutorials¶
Properties¶
Color | color | Color( 1, 1, 1, 1 ) |
bool | editor_only | false |
bool | enabled | true |
float | energy | 1.0 |
Mode | mode | 0 |
Vector2 | offset | Vector2( 0, 0 ) |
float | range_height | 0.0 |
int | range_item_cull_mask | 1 |
int | range_layer_max | 0 |
int | range_layer_min | 0 |
int | range_z_max | 1024 |
int | range_z_min | -1024 |
int | shadow_buffer_size | 2048 |
Color | shadow_color | Color( 0, 0, 0, 0 ) |
bool | shadow_enabled | false |
ShadowFilter | shadow_filter | 0 |
float | shadow_filter_smooth | 0.0 |
float | shadow_gradient_length | 0.0 |
int | shadow_item_cull_mask | 1 |
Texture | texture | |
float | texture_scale | 1.0 |
Enumerations¶
- MODE_ADD = 0 — Adds the value of pixels corresponding to the Light2D to the values of pixels under it. This is the common behavior of a light.
- MODE_SUB = 1 — Subtracts the value of pixels corresponding to the Light2D to the values of pixels under it, resulting in inversed light effect.
- MODE_MIX = 2 — Mix the value of pixels corresponding to the Light2D to the values of pixels under it by linear interpolation.
- MODE_MASK = 3 — The light texture of the Light2D is used as a mask, hiding or revealing parts of the screen underneath depending on the value of each pixel of the light (mask) texture.
- SHADOW_FILTER_NONE = 0 — No filter applies to the shadow map. See shadow_filter.
- SHADOW_FILTER_PCF3 = 1 — Percentage closer filtering (3 samples) applies to the shadow map. See shadow_filter.
- SHADOW_FILTER_PCF5 = 2 — Percentage closer filtering (5 samples) applies to the shadow map. See shadow_filter.
- SHADOW_FILTER_PCF7 = 3 — Percentage closer filtering (7 samples) applies to the shadow map. See shadow_filter.
- SHADOW_FILTER_PCF9 = 4 — Percentage closer filtering (9 samples) applies to the shadow map. See shadow_filter.
- SHADOW_FILTER_PCF13 = 5 — Percentage closer filtering (13 samples) applies to the shadow map. See shadow_filter.
Property Descriptions¶
- Color color
Default | Color( 1, 1, 1, 1 ) |
Setter | set_color(value) |
Getter | get_color() |
The Light2D’s Color.
- bool editor_only
Default | false |
Setter | set_editor_only(value) |
Getter | is_editor_only() |
If true
, Light2D will only appear when editing the scene.
- bool enabled
Default | true |
Setter | set_enabled(value) |
Getter | is_enabled() |
If true
, Light2D will emit light.
- float energy
Default | 1.0 |
Setter | set_energy(value) |
Getter | get_energy() |
The Light2D’s energy value. The larger the value, the stronger the light.
- Mode mode
Default | 0 |
Setter | set_mode(value) |
Getter | get_mode() |
The Light2D’s mode. See Mode constants for values.
- Vector2 offset
Default | Vector2( 0, 0 ) |
Setter | set_texture_offset(value) |
Getter | get_texture_offset() |
The offset of the Light2D’s texture
.
- float range_height
Default | 0.0 |
Setter | set_height(value) |
Getter | get_height() |
The height of the Light2D. Used with 2D normal mapping.
- int range_item_cull_mask
Default | 1 |
Setter | set_item_cull_mask(value) |
Getter | get_item_cull_mask() |
The layer mask. Only objects with a matching mask will be affected by the Light2D.
- int range_layer_max
Default | 0 |
Setter | set_layer_range_max(value) |
Getter | get_layer_range_max() |
Maximum layer value of objects that are affected by the Light2D.
- int range_layer_min
Default | 0 |
Setter | set_layer_range_min(value) |
Getter | get_layer_range_min() |
Minimum layer value of objects that are affected by the Light2D.
- int range_z_max
Default | 1024 |
Setter | set_z_range_max(value) |
Getter | get_z_range_max() |
Maximum z
value of objects that are affected by the Light2D.
- int range_z_min
Default | -1024 |
Setter | set_z_range_min(value) |
Getter | get_z_range_min() |
Minimum z
value of objects that are affected by the Light2D.
- int shadow_buffer_size
Default | 2048 |
Setter | set_shadow_buffer_size(value) |
Getter | get_shadow_buffer_size() |
Shadow buffer size.
- Color shadow_color
Default | Color( 0, 0, 0, 0 ) |
Setter | set_shadow_color(value) |
Getter | get_shadow_color() |
Color of shadows cast by the Light2D.
- bool shadow_enabled
Default | false |
Setter | set_shadow_enabled(value) |
Getter | is_shadow_enabled() |
If true
, the Light2D will cast shadows.
- ShadowFilter shadow_filter
Default | 0 |
Setter | set_shadow_filter(value) |
Getter | get_shadow_filter() |
Shadow filter type. See ShadowFilter for possible values.
- float shadow_filter_smooth
Default | 0.0 |
Setter | set_shadow_smooth(value) |
Getter | get_shadow_smooth() |
Smoothing value for shadows.
- float shadow_gradient_length
Default | 0.0 |
Setter | set_shadow_gradient_length(value) |
Getter | get_shadow_gradient_length() |
Smooth shadow gradient length.
- int shadow_item_cull_mask
Default | 1 |
Setter | set_item_shadow_cull_mask(value) |
Getter | get_item_shadow_cull_mask() |
The shadow mask. Used with LightOccluder2D to cast shadows. Only occluders with a matching light mask will cast shadows.
- Texture texture
Setter | set_texture(value) |
Getter | get_texture() |
Texture used for the Light2D’s appearance.
- float texture_scale
Default | 1.0 |
Setter | set_texture_scale(value) |
Getter | get_texture_scale() |
The texture
’s scale factor.