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.

Enumerations

enum Mode:

  • 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.

enum ShadowFilter:

  • 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

Default Color( 1, 1, 1, 1 )
Setter set_color(value)
Getter get_color()

The Light2D’s Color.


Default false
Setter set_editor_only(value)
Getter is_editor_only()

If true, Light2D will only appear when editing the scene.


Default true
Setter set_enabled(value)
Getter is_enabled()

If true, Light2D will emit light.


Default 1.0
Setter set_energy(value)
Getter get_energy()

The Light2D’s energy value. The larger the value, the stronger the light.


Default 0
Setter set_mode(value)
Getter get_mode()

The Light2D’s mode. See Mode constants for values.


Default Vector2( 0, 0 )
Setter set_texture_offset(value)
Getter get_texture_offset()

The offset of the Light2D’s texture.


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.


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.


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.


Setter set_texture(value)
Getter get_texture()

Texture used for the Light2D’s appearance.


Default 1.0
Setter set_texture_scale(value)
Getter get_texture_scale()

The texture’s scale factor.