shadow_control
shadow_control
is a point entity available in all Source games.
Class hierarchy |
---|
CShadowControl |
shadowcontrol.cpp
|
It defines the direction, color and attenuation distance of all dynamic shadows created for the entire map.
Bug:At least in 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, if the current map and no previous maps have contained this entity, shadow color will be inherited from
In at least 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?]Important:This is a preserved entity in .
- 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:The properties of this entity apply to the whole map. Multiple instances of this entity within a map may cause errors.
Note:
- Since 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. Use
env_cascade_light
instead - In 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
ortarget
).
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: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: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 ) (also in ) - Enable shadow direction to be calculated on a per-entity basis and to be dictated by the light closest to the entity.
- Note: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.
- Force Blob shadows
(ForceBlobShadows)
<choices> (only in ) - Enable blobby shadows (same that you can see if use lowest shadow detail).
- Warning: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 ) (also in )- Set local light shadows enabled state.
- Note:This input may not be available in some FGDs.
SetForceBlobsEnabled
<integer> (only in )- Set shadows blob state.