Shadow control/en

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

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.
Note.pngNote: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, its properties including its position 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


Targetname:
Name (targetname) <string>
The targetname that other entities refer to this entity by.
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.
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 disable, otherwise game will crash on map launch.
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.
Code: There is a custom version of this feature which could run on previous versions of Source. Click here for more information.
Tip.pngTip:Pitch is the sun's angle of elevation from the ground, and yaw is its compass bearing.

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.
SetForceBlobsEnabled <integer> (only in Black Mesa)
Set shadows blob state.
Warning.pngWarning:Never set 0, otherwise game will crash with this message.
If you'll try set to 1
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.

See also