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.