SpotLight3D
A spotlight, such as a reflector spotlight or a lantern.
A spotlight, such as a reflector spotlight or a lantern.
A Spotlight is a type of Light3D 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 Light3D.
Light is emitted in the -Z direction of the node's global basis. For an unrotated light, this means that the light is emitted forwards, illuminating the front side of a 3D model (see Vector3.Forward and Vector3.ModelFront).
Note: When using the Mobile rendering method, only 8 spot lights can be displayed on each mesh resource. Attempting to display more than 8 spot lights on a single mesh resource will result in spot lights flickering in and out as the camera moves. When using the Compatibility rendering method, only 8 spot lights can be displayed on each mesh resource by default, but this can be increased by adjusting ProjectSettings.rendering/limits/opengl/max_lights_per_object.
Note: When using the Mobile or Compatibility rendering methods, spot lights will only correctly affect meshes whose visibility AABB intersects with the light's AABB. If using a shader to deform the mesh in a way that makes it go outside its AABB, GeometryInstance3D.ExtraCullMargin must be increased on the mesh. Otherwise, the light may not be visible on the mesh.
Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Constructors1
SpotLight3DConstructor
public SpotLight3D();Properties4
SpotAngleProperty
public float SpotAngle { get; set; }Spotlight cone angle in degrees. Together with SpotRange and orientation it defines coverage; not an entity Euler rotation. The example aims the light using LookAt.
SpotAngleAttenuationProperty
public float SpotAngleAttenuation { get; set; }The spotlight's angular attenuation curve. See also SpotLight3D.SpotAttenuation.
SpotAttenuationProperty
public float SpotAttenuation { get; set; }Controls the distance attenuation function for spotlights.
A value of 0.0 will maintain a constant brightness through most of the range, but smoothly attenuate the light at the edge of the range. Use a value of 2.0 for physically accurate lights as it results in the proper inverse square attenutation.
Note: Setting attenuation to 2.0 or higher may result in distant objects receiving minimal light, even within range. For example, with a range of 4096, an object at 100 units is attenuated by a factor of 0.0001. With a default brightness of 1, the light would not be visible at that distance.
Note: Using negative or values higher than 10.0 may lead to unexpected results.
SpotRangeProperty
public float SpotRange { get; set; }Spotlight influence distance. Geometry must also lie inside SpotAngle and permitted visual layers. More energy does not fix a spotlight aimed in the wrong direction.