SpotLight

Inherits: Light < VisualInstance < CullInstance < Spatial < Node < Object

A spotlight, such as a reflector spotlight or a lantern.

Description

A Spotlight is a type of Light node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance. This attenuation can be configured by changing the energy, radius and attenuation parameters of Light.

Note: By default, only 32 SpotLights may affect a single mesh resource at once. Consider splitting your level into several meshes to decrease the likelihood that more than 32 lights will affect the same mesh resource. Splitting the level mesh will also improve frustum culling effectiveness, leading to greater performance. If you need to use more lights per mesh, you can increase ProjectSettings.rendering/limits/rendering/max_lights_per_object at the cost of shader compilation times.

Tutorials

Properties

float

spot_angle

45.0

float

spot_angle_attenuation

1.0

float

spot_attenuation

1.0

float

spot_range

5.0


Property Descriptions

float spot_angle = 45.0

  • void set_param ( float value )

  • float get_param ( )

The spotlight's angle in degrees.

Note: spot_angle is not affected by Spatial.scale (the light's scale or its parent's scale).


float spot_angle_attenuation = 1.0

  • void set_param ( float value )

  • float get_param ( )

The spotlight's angular attenuation curve.


float spot_attenuation = 1.0

  • void set_param ( float value )

  • float get_param ( )

The spotlight's light energy attenuation curve.


float spot_range = 5.0

  • void set_param ( float value )

  • float get_param ( )

The maximal range that can be reached by the spotlight. Note that the effectively lit area may appear to be smaller depending on the spot_attenuation in use. No matter the spot_attenuation in use, the light will never reach anything outside this range.

Note: spot_range is not affected by Spatial.scale (the light's scale or its parent's scale).