Class reference
Light2D
Inherits Node2D
Casts light in a 2D environment.
Description
Casts light in a 2D environment. A light is defined as a color, an energy value, a mode (see constants), and various other parameters (range and shadows-related).
Properties
int blend_mode = 0
int blend_mode = 0The Light2D's blend mode.
Color color = Color(1, 1, 1, 1)
Color color = Color(1, 1, 1, 1)The Light2D's Color.
bool editor_only = false
bool editor_only = falseIf true, Light2D will only appear when editing the scene.
bool enabled = true
bool enabled = trueIf true, Light2D will emit light.
float energy = 1.0
float energy = 1.0The Light2D's energy value. The larger the value, the stronger the light.
int range_item_cull_mask = 1
int range_item_cull_mask = 1The layer mask. Only objects with a matching CanvasItem.light_mask will be affected by the Light2D. See also shadow_item_cull_mask, which affects which objects can cast shadows. Note: range_item_cull_mask is ignored by DirectionalLight2D, which will always light a 2D node regardless of the 2D node's CanvasItem.light_mask.
int range_layer_max = 0
int range_layer_max = 0Maximum layer value of objects that are affected by the Light2D.
int range_layer_min = 0
int range_layer_min = 0Minimum layer value of objects that are affected by the Light2D.
int range_z_max = 1024
int range_z_max = 1024Maximum z value of objects that are affected by the Light2D.
int range_z_min = -1024
int range_z_min = -1024Minimum z value of objects that are affected by the Light2D.
Color shadow_color = Color(0, 0, 0, 0)
Color shadow_color = Color(0, 0, 0, 0)Color of shadows cast by the Light2D.
bool shadow_enabled = false
bool shadow_enabled = falseIf true, the Light2D will cast shadows.
int shadow_filter = 0
int shadow_filter = 0Shadow filter type.
float shadow_filter_smooth = 0.0
float shadow_filter_smooth = 0.0Smoothing value for shadows. Higher values will result in softer shadows, at the cost of visible streaks that can appear in shadow rendering. shadow_filter_smooth only has an effect if shadow_filter is SHADOW_FILTER_PCF5 or SHADOW_FILTER_PCF13.
int shadow_item_cull_mask = 1
int shadow_item_cull_mask = 1The shadow mask. Used with LightOccluder2D to cast shadows. Only occluders with a matching CanvasItem.light_mask will cast shadows. See also range_item_cull_mask, which affects which objects can receive the light.
Methods
float get_height() const
float get_height() constReturns the light's height, which is used in 2D normal mapping. See PointLight2D.height and DirectionalLight2D.height.
void set_height(float height)
float height)Sets the light's height, which is used in 2D normal mapping. See PointLight2D.height and DirectionalLight2D.height.
Constants
SHADOW_FILTER_NONE = 0
No filter applies to the shadow map. This provides hard shadow edges and is the fastest to render. See shadow_filter.
SHADOW_FILTER_PCF5 = 1
Percentage closer filtering (5 samples) applies to the shadow map. This is slower compared to hard shadow rendering. See shadow_filter.
SHADOW_FILTER_PCF13 = 2
Percentage closer filtering (13 samples) applies to the shadow map. This is the slowest shadow filtering mode, and should be used sparingly. See shadow_filter.
BLEND_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.
BLEND_MODE_SUB = 1
Subtracts the value of pixels corresponding to the Light2D to the values of pixels under it, resulting in inversed light effect.
BLEND_MODE_MIX = 2
Mix the value of pixels corresponding to the Light2D to the values of pixels under it by linear interpolation.