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

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

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.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_light2d.html