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

shadow_control

From Valve Developer Community
Jump to navigation Jump to search
English (en)Русский (ru)中文 (zh)Translate (Translate)
Shadow control.png

shadow_control is a point entity available in all Source Source games.

Class hierarchy
CShadowControl
CBaseEntity
shadowcontrol.cpp

It defines the direction, color and attenuation distance of all dynamic shadows created for the entire map.

Icon-Bug.pngBug:At least in Counter-Strike: Source Counter-Strike: Source, if the current map does not have this entity, shadow properties (angles and distance) will transfer from previous map that had shadow_control. Confirm in other games.
In at least Day of Defeat: Source Day of Defeat: Source, if the current map and no previous maps have contained this entity, shadow color will be inherited from light_environment's _ambient KV.   [todo tested in?]
Icon-Important.pngImportant:This is a preserved entity in Counter-Strike: SourceHalf-Life 2: DeathmatchDay of Defeat: SourcePortalTeam Fortress 2Left 4 DeadLeft 4 Dead 2Portal 2Counter-Strike: Global Offensive.
  • On a new round entities with this classname will intentionally not reset. You can use logic_auto to emulate resetting it.
  • Killing it removes it forever, as it is not respawned on a new round.
  • It cannot be spawned with a point_template.
  • Parenting this with non preserved entities may have undesirable effects.
Note.pngNote:The properties of this entity apply to the whole map. Multiple instances of this entity within a map may cause errors.
Note.pngNote:
  • Since Left 4 Dead Left 4 Dead, shadow direction can be determined by local lights instead of a global value. See below for more details.
  • Deprecated in Counter-Strike: Global Offensive Counter-Strike: Global Offensive. Use env_cascade_light instead
  • In Black Mesa Black Mesa shadows are disabled by default. Also shadows always use lowest shadows detail setting, so that they look like a darkening under models, due to this they do not stand out against background of dynamic light sources.

Keyvalues

Name (targetname) <string>
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Pitch Yaw Roll (Y Z X) (angles) <angle>
This is the shadow direction. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, and roll is the rotation around the X axis.
Tip.pngTip:Pitch is the sun's angle of elevation from the ground, and yaw is its compass bearing.
Shadow Color (color) <color255>
This is the color of the shadows.
Maximum Distance (distance) <float>
This is the maximum distance the shadow is allowed to cast, in inches.
Tip.pngTip:Shortening this distance can be used to approximate the effects of diffuse lighting.
All Shadows Disabled (disableallshadows) <choices>
Disable shadows entirely.
Enable Local Light Shadows (enableshadowsfromlocallights) <boolean> (in all games since Left 4 Dead) (also in Garry's ModMapbasePortal 2: Community Edition)
Enable shadow direction to be calculated on a per-entity basis and to be dictated by the light closest to the entity.
Note.pngNote:This keyvalue may not be available in some FGDs.
Cpp.pngCode:There is a custom version of this feature which could run on previous versions of Source. Click here for more information.
Force Blob shadows (ForceBlobShadows) <choices> (only in Black Mesa)
Enable blobby shadows (same that you can see if use lowest shadow detail).
Warning.pngWarning:Never set to 0, otherwise game will crash on map launch.

Inputs

color <color255>
Set the shadow color.
direction <vector>
Set the shadow direction.
SetDistance <float>
Set the maximum shadow cast distance.
SetAngles <string>
Set the shadow direction.
SetShadowsDisabled <integer>
Set shadows disabled state.
SetShadowsFromLocalLightsEnabled <integer> (in all games since Left 4 Dead) (also in Garry's ModMapbasePortal 2: Community Edition)
Set local light shadows enabled state.
Note.pngNote:This input may not be available in some FGDs.
SetForceBlobsEnabled <integer> (only in Black Mesa)
Set shadows blob state.
Warning.pngWarning:Never set 0, otherwise game will crash with this message.
BlobShadowsInput.jpg

See also