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

ColorcolorColor( 1, 1, 1, 1 )
booleditor_onlyfalse
boolenabledtrue
floatenergy1.0
Modemode0
Vector2offsetVector2( 0, 0 )
floatrange_height0.0
intrange_item_cull_mask1
intrange_layer_max0
intrange_layer_min0
intrange_z_max1024
intrange_z_min-1024
intshadow_buffer_size2048
Colorshadow_colorColor( 0, 0, 0, 0 )
boolshadow_enabledfalse
ShadowFiltershadow_filter0
floatshadow_filter_smooth0.0
floatshadow_gradient_length0.0
intshadow_item_cull_mask1
Texturetexture 
floattexture_scale1.0

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

DefaultColor( 1, 1, 1, 1 )
Setterset_color(value)
Getterget_color()

The Light2D’s Color.


Defaultfalse
Setterset_editor_only(value)
Getteris_editor_only()

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


Defaulttrue
Setterset_enabled(value)
Getteris_enabled()

If true, Light2D will emit light.


Default1.0
Setterset_energy(value)
Getterget_energy()

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


Default0
Setterset_mode(value)
Getterget_mode()

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


DefaultVector2( 0, 0 )
Setterset_texture_offset(value)
Getterget_texture_offset()

The offset of the Light2D’s texture.


Default0.0
Setterset_height(value)
Getterget_height()

The height of the Light2D. Used with 2D normal mapping.


  • int range_item_cull_mask
Default1
Setterset_item_cull_mask(value)
Getterget_item_cull_mask()

The layer mask. Only objects with a matching mask will be affected by the Light2D.


  • int range_layer_max
Default0
Setterset_layer_range_max(value)
Getterget_layer_range_max()

Maximum layer value of objects that are affected by the Light2D.


  • int range_layer_min
Default0
Setterset_layer_range_min(value)
Getterget_layer_range_min()

Minimum layer value of objects that are affected by the Light2D.


  • int range_z_max
Default1024
Setterset_z_range_max(value)
Getterget_z_range_max()

Maximum z value of objects that are affected by the Light2D.


  • int range_z_min
Default-1024
Setterset_z_range_min(value)
Getterget_z_range_min()

Minimum z value of objects that are affected by the Light2D.


  • int shadow_buffer_size
Default2048
Setterset_shadow_buffer_size(value)
Getterget_shadow_buffer_size()

Shadow buffer size.


DefaultColor( 0, 0, 0, 0 )
Setterset_shadow_color(value)
Getterget_shadow_color()

Color of shadows cast by the Light2D.


  • bool shadow_enabled
Defaultfalse
Setterset_shadow_enabled(value)
Getteris_shadow_enabled()

If true, the Light2D will cast shadows.


Default0
Setterset_shadow_filter(value)
Getterget_shadow_filter()

Shadow filter type. See ShadowFilter for possible values.


  • float shadow_filter_smooth
Default0.0
Setterset_shadow_smooth(value)
Getterget_shadow_smooth()

Smoothing value for shadows.


  • float shadow_gradient_length
Default0.0
Setterset_shadow_gradient_length(value)
Getterget_shadow_gradient_length()

Smooth shadow gradient length.


  • int shadow_item_cull_mask
Default1
Setterset_item_shadow_cull_mask(value)
Getterget_item_shadow_cull_mask()

The shadow mask. Used with LightOccluder2D to cast shadows. Only occluders with a matching light mask will cast shadows.


Setterset_texture(value)
Getterget_texture()

Texture used for the Light2D’s appearance.


Default1.0
Setterset_texture_scale(value)
Getterget_texture_scale()

The texture‘s scale factor.