Beam spotlight/en

From Valve Developer Community
Jump to: navigation, search
class hierarchy
CBeamSpotlight defined in beamspotlight.cpp
CBaseEntity

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

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

([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) <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) <choices>
Various somewhat legacy alpha effects.
Render Effects
Icon-Bug.pngBug:Alpha effects from 0 to 10 are unavailable due to the bug in code in Counter-Strike: Global Offensive Counter-Strike: Global Offensive
  • 0: None
  • 1: Slow Pulse (varies alpha by ±16 over a period of 1.5 s)
  • 2: Fast Pulse (varies alpha by ±16 over a period of 0.4 s)
  • 3: Slow Wide Pulse (varies alpha by ±64 over a period of 1.5 s)
  • 4: Fast Wide Pulse (varies alpha by ±64 over a period of 0.4 s)
  • 5: Slow Fade Away (decreases alpha by -1 per frame/(in all games since Left 4 Dead) Fades out over 4 s)
  • 6: Fast Fade Away (decreases alpha by -4 per frame/(in all games since Left 4 Dead) Fades out over 1 s)
  • 7: Slow Become Solid (increases alpha by +1 per frame/(in all games since Left 4 Dead) Fades in over 4 s)
  • 8: Fast Become Solid (increases alpha by +4 per frame/(in all games since Left 4 Dead) Fades in over 1 s)
  • 9: Slow Strobe (transparent 0.8 s, visible 0.8 s, repeat)
  • 10: Fast Strobe (transparent 0.2 s, visible 0.2 s, repeat)
  • 11: Faster Strobe (transparent 0.09 s, visible 0.09 s, repeat)
  • 12: Slow Flicker (transparent 0.18 s, visible 1.5 s, repeat)
  • 13: Fast Flicker (transparent 0.14 s, visible 0.2 s, repeat)
  • 14: Constant Glow ("NoDissipation;" purpose uncertain—for sprites?) (not in Counter-Strike: Global Offensive)
  • 15: Distort (causes unnatural flickering and position shifting)/(in all games since Left 4 Dead) Fade Out (instant; not very useful outside of code)
  • 16: Hologram (Distort + "distance fade")/(in all games since Left 4 Dead) Fade In (instant; not very useful outside of code)
  • 17: Scale Up ("Explode"/"scale up really big!" causes wild stretching of model parts) (in Source 2013)/Fade Wider Pulse (varies alpha by ±255 over a period over a period of 0.26 s) (in all games since Left 4 Dead)
    Confirm:which branches/games is it available in, and where does it do what?
  • 18: Glow Shell (purpose unclear) (in all games since Source 2013) (not in Counter-Strike: Global Offensive)
    Confirm:what does this do? and which games is it in?
  • 19: Clamp Minimum Scale ("keep this sprite from getting very small (SPRITES only!)") (not in Counter-Strike: Global Offensive)
  • 20: Environmental Rain ("for environmental rendermode, make rain") (in Source 2013) (not in Counter-Strike: Global Offensive)
    Confirm:which games? may be nonfunctional.
  • 21: Environmental Snow ("for environmental rendermode, make snow") (in Source 2013) (not in Counter-Strike: Global Offensive)
    Confirm:which games? may be nonfunctional.
  • 22: Spotlight FX ("TEST CODE for experimental spotlight") (in Source 2013) (not in Counter-Strike: Global Offensive)
  • 23: Ragdoll ("HACKHACK: TEST CODE for signalling death of a ragdoll character;" ragdolls an entity but doesn't kill it) (in Source 2013) (not in Counter-Strike: Global Offensive)
    Confirm:which games? may be nonfunctional?
  • 24: Fade Wider Pulse (varies alpha by ±255 over a period over a period of 0.26 s) (in Source 2013) (not in Counter-Strike: Global Offensive)
  • 25: kRenderFXMax/Fade Near (removed since Left 4 Dead) (not in Counter-Strike: Global Offensive)
Blank image.pngTodo: what does this do? may be nonfunctional
Render FX / Transparency (0 - 255) (renderamt) <integer>
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.
Disable Receiving Shadows (disablereceiveshadows) <boolean>
Prevent the entity from receiving shadows on itself.


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 <color255>
Sets an RGB color for the entity.

Outputs

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