This article's documentation is for anything that uses the Source engine. Click here for more information.

Beam spotlight: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Added information.)
m (Substituted IO templates)
 
(23 intermediate revisions by 14 users not shown)
Line 1: Line 1:
==Entity Description==
{{LanguageBar}}
{{this is a|point entity|name=beam_spotlight|sprite=1|engine=Source|since=Left 4 Dead}}
{{CD|CBeamSpotlight|file1=beamspotlight.cpp}}


[[Image:{{PAGENAME}}.png|left]]The '''Beam_spotlight''' creates a cone shaped light "glow" of light reflecting off of fog.  Does not provide any illumination on objects itself, but makes other lightsources, such as a [[light_spot]] look more realistic (treated as an overlay?). Cone is slightly parabolic, with the apex slightly behind the entity and unrendered.
It is used to draw a spotlight. Will draw a beam when the player views it side on, and a halo when it's facing towards the player. It will also create a dynamic light wherever the end of the spotlight rests. Other than its ability to rotate, this entity is functionally identical to {{ent|point_spotlight}}.


Can be set to rotate for a lighthouse search beam effect.
{{note|This spotlight is entirely client side, and rotation may be desynchronized between clients.}}
{{note|This entity is also available in {{game link|Garry's Mod}}.}}


Creates a glare effect when looking directly into the source (not visible from behind, as one would expect).
{{tip|Can be set to rotate for a lighthouse search beam effect.}}


==Flags==
{{fl|1|Start On|}}
{{fl|2|No Dynamic Light - Do not create any actual light.|}}
{{fl|4|Start with Rotation On|}}
{{fl|8|Reverse Direction|}}
{{fl|16|X Axis|}}
{{fl|32|Y Axis|}}
({{clarify}} are these axes relative to the world or to the entity?)


==Keyvalues==
==Keyvalues==
* {{KV Targetname}}
{{KV|Max Rotation Speed|intn=maxspeed|integer|The maximum rotation speed of the spotlight, in degrees per second.}}
{{KV|Spotlight Length|intn=SpotlightLength|integer|Length of the spotlight beam.}}
{{KV|Spotlight Width|intn=SpotlightWidth|integer|Width of the spotlight beam.}}
{{KV|HDR color scale|intn=HDRColorScale|float|Multiplier for sprite color by when running in HDR mode.}}
{{KV|Halo Sprite|intn=HaloSprite|sprite|The material that should be used for the halo.|only={{l4d}}}}
{{KV|Beam Sprite|intn=BeamSprite|sprite|The material that should be used for the beam.|only={{l4d}}}}
{{KV RenderFields}}


* {{KV Angles}}
==Inputs==
{{I|LightOn|Turn the spotlight on.}}
{{I|LightOff|Turn the spotlight off}}
{{I|Start|Start rotating.}}
{{I|Stop|Stop rotating.}}
{{I|Reverse|Reverse the direction of rotation.}}
{{I RenderFields}}


* {{KV Parentname}}
==Outputs==
{{O|OnLightOn|Fires when light turns on.}}
{{O|OnLightOff|Fires when light turns off.}}


* '''Color'''
[[Category:Lighting]]
:The color of the beam.  Black makes the beam invisible, so no "Shadow Beams."
 
* '''Disable Receiving Shadows'''
:''Default No''
 
* '''Start Fade Distance'''
:Distance at which the overlay starts to fade (<0 = subtract from fademaxdist).
 
* '''End Fade Distance'''
:Maximum distance at which the overlay is visible (0= don't fade out).
 
* '''Fade Scale'''
:If you specify a fade in the worldspawn, or if the engine is running under low end/medium end/XBox360, then the engine will forcibly fade out the props even if fademindist/fademaxdist isn't specified.  This scale factor gives you some control over the fade.  Using 0 here turns off the forcible fades.  Numbers smaller than 1 cause the prop to fade out at further distances, and greater than 1 cause it to fade out at closer distances.
 
* '''Max Rotation Speed'''
:The maximum rotation speed of the spotlight in degrees per second.  Rotates counter-clockwise (seen from above) if speed is >0.
 
* '''Spotlight Length'''
Length of the spotlight beam.
 
* '''Spotlight Width'''
Width of the spotlight beam at the far end of the cone.  Appears to be the diameter.  Appears to have a maximum width of about 128 units.
 
* '''HDR color scale'''
Float value to multiply the sprite color by when running in HDR mode.
 
== Flags ==
 
* 1:Start On'''
 
* 2:No Dynamic Light'''
 
* 4:Start Rotation On'''
 
* 8:Reverse Direction
 
* 16:X Axis
:Causes the light to rotate about the X Axis instead of the Z.
 
* 32:Y Axis
:Causes the light to rotate about the Y Axis instead of the Z.
 
== Inputs ==
 
* {{I Targetname}}
 
* {{I Parentname}}
 
* '''Color'''
<byte> <byte> <byte> Changes the color of the beam.
 
* '''Alpha'''
<byte> Change the alpha.
 
* '''TurnOn'''
: Turn the light off.
 
* '''TurnOff'''
: Turn the light on.
 
* '''Start'''
:Start the rotator rotating.
 
* '''Stop'''
:Stop the rotator from rotating.
 
* '''Reverse'''
:Reverse the direction of the rotation.
 
== Outputs ==
 
* {{O Targetname}}
 
* '''OnLightOn'''
:Fires when the light turns on.
 
* '''OnLightOff'''
:Fires when the light turns off.

Latest revision as of 23:04, 20 April 2025

English (en)Русский (ru)Translate (Translate)
Beam spotlight.png

beam_spotlight is a point entity available in all Source Source games since Left 4 Dead Left 4 Dead.

C++ Class hierarchy
CBeamSpotlight
CBaseEntity
C++ beamspotlight.cpp

It is used to draw a spotlight. Will draw a beam when the player views it side on, and a halo when it's facing towards the player. It will also create a dynamic light wherever the end of the spotlight rests. Other than its ability to rotate, this entity is functionally identical to point_spotlight.

Note.pngNote:This spotlight is entirely client side, and rotation may be desynchronized between clients.
Note.pngNote:This entity is also available in Garry's Mod Garry's Mod .
Tip.pngTip:Can be set to rotate for a lighthouse search beam effect.

Flags

Start On : [1]
No Dynamic Light - Do not create any actual light. : [2]
Start with Rotation On : [4]
Reverse Direction : [8]
X Axis : [16]
Y Axis : [32]

([Clarify] are these axes relative to the world or to the entity?)

Keyvalues

Max Rotation Speed (maxspeed) <integer>
The maximum rotation speed of the spotlight, in degrees per second.
Spotlight Length (SpotlightLength) <integer>
Length of the spotlight beam.
Spotlight Width (SpotlightWidth) <integer>
Width of the spotlight beam.
HDR color scale (HDRColorScale) <float>
Multiplier for sprite color by when running in HDR mode.
Halo Sprite (HaloSprite) <sprite> (only in Left 4 Dead)
The material that should be used for the halo.
Beam Sprite (BeamSprite) <sprite> (only in Left 4 Dead)
The material that should be used for the beam.

RenderFields:


Render Mode (rendermode) <byte choices>
Set a non-standard rendering mode on this entity.
Render Modes
  • 0: Normal
  • 1: Color
  • 2: Texture
  • 3: Glow
  • 4: Solid/Alphatest Obsolete
  • 5: Additive
  • 6: Removed, does nothing Obsolete
  • 7: Additive Fractional Frame
  • 8: Alpha Add
  • 9: World Space Glow
  • 10: Don't Render
Render FX (renderfx) <byte choices>
Various somewhat legacy alpha effects. See render effects.
Render Amount / Transparency (renderamt) <byte>
Transparency amount, requires a Render Mode other than Normal. 0 is invisible, 255 is fully visible.
Render Color (R G B) (rendercolor) <color255>
Color tint.

Inputs

LightOn
Turn the spotlight on.
LightOff
Turn the spotlight off
Start
Start rotating.
Stop
Stop rotating.
Reverse
Reverse the direction of rotation.

RenderFields:

Alpha <integer 0–255>
Sets the entity's transparency to a number from 0 (invisible) to 255 (fully visible). Requires the entity to have its rendermode set to a number other than 0.
Color <color255RedirectInput/color32>
Sets an RGB color for the entity.

Outputs

OnLightOn
Fires when light turns on.
OnLightOff
Fires when light turns off.