light
Jump to navigation
Jump to search

AltNames:light, light_spot, light_glspot, and (in all games since
) light_directional are all tied to the same C++ class in game, and only differ in VRAD.
Confirm:How many of the
![]() |
---|
CLight |
![]() |
This article is about the light entity. For general information about using lights, see Lighting.

light
is a semi-internal point entity available in all Source games.
It creates an invisible static light source that shines in all directions.


Keyvalues
- Name (targetname) <string>[ Edit ]
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
Important:Naming a static light radically changes its behavior. See Naming Lights for details.
Entity To Point At (target) <targetname>- Deprecated.
Entity to point this light at. Non-functional, as this entity casts light in all directions, regardless of if it has a target; use light_spot instead.
- Maximum Distance (_distance) <integer>
- This is the distance that light is allowed to cast, in inches. Non-functional in
Source 2013 and later, use 50 and 0 percent falloff instead.
- Appearance (lightstyle) (style) <integer choices>
- Various lightstyle presets. Cannot be used on named lights.
Warning:Using this parameter near displacements reduces performance!
Lightstyle presets (epilepsy warning) Expand
- Custom Appearance (pattern) <string>
- A string of english letters, like a sequence of piano keys, that define a pattern of brightness. a is 0%, m is 100%, and z is 200%. Updates at 10 Hz. Requires light to have a targetname.
Internal keyvalues used only by VRAD:
- Brightness (_light) <color255 + int>
- The RGB color of the light, and a multiplicative scalar for brightness (applied after gamma correction). Colors should be between 0 and 255; brightness can be anything (even absent). If only one value is provided, light will be greyscale.
Note:Brightness values below zero are clamped; this can be fixed by modifying VRAD.
Code Fix:In
utils/vrad/lightmap.cpp
, look for the comment saying "// make sure light is legal", then remove the following if statement, including all its contents.
- BrightnessHDR (_lightHDR) <color255 + int>
- RGB color and brightness override used in HDR mode. Default is
-1 -1 -1 1
, which means no change. Warning:The fourth digit must be positive. Otherwise all light will be sucked out of your map!
- BrightnessScaleHDR (_lightHDRscale) <float>
- A simple intensity multiplier used when compiling HDR lighting.
Note:Unlike _light and _lightHDR, negative values are supported. Negative brightness will suck out the amount of lighting that the equivalent positive brightness would cast. Use sparingly; set falloff to linear instead of quadratic to make it more like an ordinary shadow and less like a black hole. Since this only applies to HDR mode, it should be reserved for games that don't officially support disabling HDR.
- Constant (_constant_attn) <float>
- Linear (_linear_attn) <float>
- Quadratic (_quadratic_attn) <float>
- These three values determine how the intensity of the emitted light falls off over distance. See Constant-Linear-Quadratic Falloff.
- 50 percent falloff distance (_fifty_percent_distance) <float>
- 0 percent falloff distance (_zero_percent_distance) <float>
- Distances at which brightness should have fallen to 50% and (1/256)% respectively. Overrides Linear/Constant/Quadratic parameters if non-zero.
Bug:Using this setting will sometimes not work, which may or may not be related to using the light inside of an instance. Collapsing the instance and messing with the light's falloff values seems to help.
- Hard falloff (_hardfalloff) <boolean>
- Causes lights to fall to exactly zero beyond the 0% distance. May cause unrealistic lighting if not used carefully.
- Cast entity shadows (_castentityshadow) <boolean> (in all games since
) (also in
)
- Allows the light to modify the direction of nearby render-to-texture shadows so that they always point away from its origin. See also shadow_control.
Note:This keyvalue may not be available in some FGDs.
- Shadow cast offset (_shadoworiginoffset) <vector> (in all games since
)
- A world-space offset that gets applied to the light origin when casting entity shadows. Useful for dealing with funny-looking shadows from very low lights: Just offset up the z axis. Default
0 0 0
. Note:This keyvalue may not be available in some FGDs.

BaseEntity
keyvalues even work on static lights? Does parenting work?Pitch Yaw Roll (Y Z X) (angles) <angles>!FGD- Deprecated.
Written by VBSP to the worldlights lump, but is unused, as light from this entity is omnidirectional.
Flags
- Initially dark : [1]
- Spawns with the light turned off, so a light switch or similar can turn it on.
Inputs
- TurnOn
- Turn the light on.
- TurnOff
- The the light off.
- Toggle
- Toggle the light's current state.
- SetPattern <string >
- Set a custom pattern of light brightness for this light. If the Light is off, then this input appears to turn it on.
- FadeToPattern <string >
- Fades from first value in old pattern, to first value in the new given pattern. If the Light is off, then this input appears to turn it on.
See also
- light_spot
- Light_deferred
- Lighting
- Adding Light
- Intermediate Lighting
- Advanced Lighting
- Effect flags (dynamic light effects)
- Tool textures (for Block light)
- $reflectivity (controlling reflected light off surfaces)