Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
Light2D¶
Inherits: Node2D < CanvasItem < Node < Object
Inherited By: DirectionalLight2D, PointLight2D
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).
Tutorials¶
Properties¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Methods¶
get_height ( ) const |
|
void |
set_height ( float height ) |
Enumerations¶
enum ShadowFilter:
ShadowFilter 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.
ShadowFilter 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.
ShadowFilter 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.
enum BlendMode:
BlendMode 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.
BlendMode 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.
BlendMode BLEND_MODE_MIX = 2
Mix the value of pixels corresponding to the Light2D to the values of pixels under it by linear interpolation.
Property Descriptions¶
BlendMode blend_mode = 0
The Light2D's blend mode. See BlendMode constants for values.
Color color = Color(1, 1, 1, 1)
The Light2D's Color.
bool editor_only = false
If true
, Light2D will only appear when editing the scene.
bool enabled = true
If true
, Light2D will emit light.
float energy = 1.0
The Light2D's energy value. The larger the value, the stronger the light.
int range_item_cull_mask = 1
The 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
Maximum layer value of objects that are affected by the Light2D.
int range_layer_min = 0
Minimum layer value of objects that are affected by the Light2D.
int range_z_max = 1024
Maximum z
value of objects that are affected by the Light2D.
int range_z_min = -1024
Minimum z
value of objects that are affected by the Light2D.
Color shadow_color = Color(0, 0, 0, 0)
Color of shadows cast by the Light2D.
bool shadow_enabled = false
If true
, the Light2D will cast shadows.
ShadowFilter shadow_filter = 0
void set_shadow_filter ( ShadowFilter value )
ShadowFilter get_shadow_filter ( )
Shadow filter type. See ShadowFilter for possible values.
float shadow_filter_smooth = 0.0
Smoothing 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
The 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.
Method Descriptions¶
float get_height ( ) const
Returns the light's height, which is used in 2D normal mapping. See PointLight2D.height and DirectionalLight2D.height.
void set_height