Env global light: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (link fixing)
(updates)
Line 1: Line 1:
{{base point|env_global_light|since=Alien Swarm}}
{{lang|Env global light}}
[[File:Env_global_light_stockasw.jpg|thumb|350px]]
{{asw point|env_global_light}} It casts a [[Wikipedia:Shadow mapping|shadow map]] that follows the player. Nearly identical to {{ent|sunlight_shadow_control}}.


[[File:Env_global_light_stockasw.jpg|thumb|350px|Use in stock(unmodded) [[Alien Swarm]]. Note the fading toward the edges, this is due to the small projection coverage. It's basically a giant [[env_projectedtexture]] bound to the player, but with orthographic projection.]]
The main difference from an {{ent|env_projectedtexture}} is that this projects [[Wikipedia:Orthographic_projection|orthographically]] (like sunlight) instead of in a radial fashion (like a lightbulb).


== Entity description ==
{{code class|CGlobalLight|env_global_light.cpp}}
It casts an [[Wikipedia:Orthographic projection|orthographic]] [[Wikipedia:Shadow mapping|shadow map]] onto the world, centred on the camera. It is only designed to work from top-down cameras. Nearly identical to [[sunlight_shadow_control]] in both function and appearance


== Dedicated Console Variables ==
==Dedicated Console Variables==
;cl_sunlight_ortho_size
{{varcom|start}}
: Default: 0 
{{varcom|cl_globallight_freeze|0|01|Freezes the <code>env_global_light</code> in place so that it won't follow the player.{{confirm}}}}
;cl_sunlight_depthbias
{{varcom|cl_globallight_xoffset|-800|dist|Offset from the player that the light originates from, along the X axis.}}
: Default: 0.02
{{varcom|cl_globallight_yoffset|1600|dist|Offset from the player that the light originates from, along the Y axis.}}
;cl_globallight_freeze
{{varcom|end}}
: Default: 0
;cl_globallight_xoffset  
: Default: -800
;cl_globallight_yoffset  
: Default: 1600
{{Warning | The default Y and X offset are no where near the player in most cases. But depending on the light angles, the offsets also need changed! }}  


== Keyvalues ==
==Keyvalues==
{{KV|Pitch Yaw Roll (Y Z X)|string|This is the light cast 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.}}
{{KV|Light Color (color)|color255|RGBA color of the sunlight.}}
{{KV|Light Color|color255|This is the color of the sunlight.}}
{{KV|Color Transition Time (colortransitiontime)|float|This is the number of seconds it takes to get from 0 to 255.{{clarify}}}}
{{KV|Color Transition Time|float|This is the number of seconds it takes to get from 0 to 255.}}
{{KV|Distance (distance)|float|Height above the player where the projection originates from.}}
{{KV|Distance|float|This is the distance of the sun, greater distances produce more orthogonal shadows.}}
{{KV|FOV (fov)|float|This is the field of view that the sunlight casts in. Use lower values to simulate a more distant sun and sharper shadows.}}
{{KV|FOV|float|This is the field of view that the sunlight casts in. Use lower values for more distant sun and sharper shadows.}}
{{KV|NearZ Distance (nearz)|float|Distance from the player where the near Z plane is. Anything closer to the projection origin}}
{{KV|NearZ Distance|float|This controls the near clipping plane's distance from the player.}}
{{KV|North Offset (northoffset)|float|"This offsets the from the player position where the sun is attached."{{clarify}}}}
{{KV|North Offset|float|This offsets the from the player position where the sun is attached.}}
{{KV|Texture Name (texturename)|material|The light texture which this entity projects.}}
{{KV|Texture Name|material|The [[texture]] or [[material]] which this entity projects.}}
{{KV|Enable Shadows (enableshadows)|boolean|Enables shadows. If shadows are disabled, light may appear to go through objects. Disabling shadows may be ideal for lower-detail environments due to being less [[expensive]].}}
{{KV|Enable Shadows|boolean|Enables/disables [[Wikipedia:Shadow mapping|shadow map]]s.}}
{{KV EnableDisable}}
{{KV EnableDisable}}
{{KV Targetname}}
{{KV BaseEntity|l4d2=1}}


== Inputs ==
==Inputs==
{{IO|LightColor|Set the light color.|param=color255}}
{{IO|LightColor|Set the light color.|param=color255}}
{{IO|SetAngles|Set the sun direction.|param=string}}
{{IO|SetAngles|Set the sun direction.|param=string}}
Line 42: Line 36:
{{IO|EnableShadows|Set whether [[Wikipedia:Shadow mapping|shadow map]]s are enabled|param=boolean}}
{{IO|EnableShadows|Set whether [[Wikipedia:Shadow mapping|shadow map]]s are enabled|param=boolean}}
{{I EnableDisable}}
{{I EnableDisable}}
{{I Targetname}}
{{I BaseEntity|l4d2=1}}


== Outputs ==
==Outputs==
{{O Targetname}}
{{O BaseEntity}}

Revision as of 15:15, 26 September 2018

English (en)Translate (Translate)
Env global light stockasw.jpg

Template:Asw point It casts a shadow map that follows the player. Nearly identical to sunlight_shadow_control.

The main difference from an env_projectedtexture is that this projects orthographically (like sunlight) instead of in a radial fashion (like a lightbulb).

C++ In code, it is represented by theCGlobalLightclass, defined in theenv_global_light.cppfile.

Dedicated Console Variables

Cvar/Command Parameters or default value Descriptor Effect
cl_globallight_freeze 0 0 disables, 1 enables Freezes the env_global_light in place so that it won't follow the player.[confirm]
cl_globallight_xoffset -800 Hammer units Offset from the player that the light originates from, along the X axis.
cl_globallight_yoffset 1600 Hammer units Offset from the player that the light originates from, along the Y axis.

Keyvalues

Light Color (color) ([todo internal name (i)]) <color255>
RGBA color of the sunlight.
Color Transition Time (colortransitiontime) ([todo internal name (i)]) <float>
This is the number of seconds it takes to get from 0 to 255.[Clarify]
Distance (distance) ([todo internal name (i)]) <float>
Height above the player where the projection originates from.
FOV (fov) ([todo internal name (i)]) <float>
This is the field of view that the sunlight casts in. Use lower values to simulate a more distant sun and sharper shadows.
NearZ Distance (nearz) ([todo internal name (i)]) <float>
Distance from the player where the near Z plane is. Anything closer to the projection origin
North Offset (northoffset) ([todo internal name (i)]) <float>
"This offsets the from the player position where the sun is attached."[Clarify]
Texture Name (texturename) ([todo internal name (i)]) <material>
The light texture which this entity projects.
Enable Shadows (enableshadows) ([todo internal name (i)]) <boolean>
Enables shadows. If shadows are disabled, light may appear to go through objects. Disabling shadows may be ideal for lower-detail environments due to being less expensive.
Start Disabled (StartDisabled) <boolean>
Stay dormant until activated (with theEnableinput).


Inputs

LightColor <color255RedirectInput/color32>
Set the light color.
SetAngles <stringRedirectInput/string>
Set the sun direction.
SetDistance <floatRedirectInput/float>
Set the distance of the sun.
SetFOV <floatRedirectInput/float>
Set the field of view the sun casts.
SetNearZDistance <floatRedirectInput/float>
Set the near z distance.
SetNorthOffset <floatRedirectInput/float>
Sets the north offset.
SetTexture <stringRedirectInput/string>
Set the texture cookie of the sunlight.
EnableShadows <booleanRedirectInput/boolean>
Set whether shadow maps are enabled

EnableDisable:

Enable / Disable
Enable/disable this entity from performing its task. It might also disappear from view.


Outputs