Light environment: Difference between revisions
Jump to navigation
Jump to search

Tip:Use with env_sun and shadow_control (if no CSM) or env_cascade_light (if CSM).
Note:
Bug:
Note:Specified or user language subpage unknown or nonexistent, showing en
m (Changed parameters of {{this is a}} to comply with the updated version. This action was performed by a bot.) |
(badly moved multipage, rest of page history at Archived_page_history/Light_environment/en) |
||
Line 1: | Line 1: | ||
{{LanguageBar}} | |||
{{tabs|main=source|goldsrc=1|source=1|source2=1|Light environment}} | {{tabs|main=source|goldsrc=1|source=1|source2=1|Light environment}} | ||
{{this is a|point entity|name=light_environment|sprite=1}} {{ | {{this is a|point entity|name=light_environment|sprite=1}} | ||
It casts parallel directional lighting from the [[Tool textures#Sky(boxes) and fog|toolsskybox]] texture to approximate the light cast from the Sun or Moon. | |||
{{Tip|Use with {{ent|env_sun}} and {{ent|shadow_control}} (if no [[CSM]]) or {{ent|env_cascade_light}} (if [[CSM]]).}} | |||
{{Note|{{clr}} | |||
* The <code>light_environment</code> still inherits most properties from the basic {{ent|light}} entity. This means that the <code>light_environment</code> can be named (by adding the <code>targetname</code> keyvalue with SmartEdit off) and even disabled/enabled, although it will look very crude as vanilla {{Vrad|3.1}} does not calculate bounced lighting for named lights. Furthermore, there is a bug in games other than {{csgo|4.1}} where light from a named <code>light_environment</code> on static props will break when the light is changed. | |||
* The properties of this entity apply to the whole map. Using more than 1 entity for areas with a skybox [[Tool textures#Sky(boxes) and fog|toolsskybox]] texture does not create errors '''provided If all instances of light_environment have identical info.''' It is pointless to have more than 1 though. | |||
:{{modernConfirm|Multiple light_environments with different info seem to not cause issues if they are in areas that are not connected; see {{cow|halls3}}, which has a different light_environment for the [[3D Skybox]] compared to the main playable space. The limit might actually be "no more than one light_env per [[PVS]]".}} | |||
}} | |||
{{bug|{{clr}} | |||
* You can have '''only''' one {{code|light_environment}} and toggle it. Others will not work. | |||
* Ambient light can't be toggled and doesn't work with custom appearances. | |||
* If you use a named {{code|light_environment}}, {{ent|env_cascade_light}}'s shadows will not display on world geometry. | |||
* With a custom appearance, {{ent|env_cascade_light}} will not display shadows on world geometry.}} | |||
== Skybox lighting == | |||
{{Multipage link|Skybox lighting}} | |||
==Keyvalues== | |||
{{KV Angles}} | |||
{{KV|Pitch|intn=pitch|angle|Overrides the pitch value in Angles, even if omitted, so it ''needs'' to be specified. Contrary to Angles, the rotation of this pitch is measured ''counter''-clockwise from the horizontal, so that ''90'' is straight up, while ''-90'' is straight down. (It's simply the negative of a normal pitch value.)}} | |||
{{KV|Brightness|intn=_light|color255 + int|Color and brightness of the direct sunlight.}} | |||
{{KV|Ambient|intn=_ambient|color255 + int|Color and brightness of the diffuse skylight.}} | |||
{{KV|BrightnessHDR|intn=_lightHDR|color255 + int|Override for ''Brightness'' when compiling HDR lighting. Defaults to <code>-1 -1 -1 1</code>, which means "same as LDR".}} | |||
{{KV|BrightnessScaleHDR|intn=_lightscaleHDR|float|Amount to scale the direct light by when compiling for HDR.}} | |||
{{KV|AmbientHDR|intn=_ambientHDR|color255 + int|Override for ''Ambient'' when compiling HDR lighting. Defaults to <code>-1 -1 -1 1</code>, which means "same as LDR".}} | |||
{{KV|AmbientScaleHDR|intn=_AmbientScaleHDR|float|Amount to scale the ambient light by when compiling for HDR.}} | |||
{{KV|SunSpreadAngle|intn=SunSpreadAngle|float|The angular extent of the sun for casting soft shadows. Higher numbers are more diffuse. 3 is a good starting value. Remember: on cloudy days, the shadows will be blurred because the sunlight is being diffused by clouds. | |||
:Suggested starting values: | |||
:* 1 - Sunny day; reduces aliasing on low-res lightmaps without increasing prominence of penumbras, and subtly softens high-res lightmaps. | |||
:* 3 - Slightly overcast, but still sunny | |||
:* 5 - Valve's recommended starting value | |||
:* 90 - Hazy day | |||
:* 135 - Cloudy, rainy, and or foggy day | |||
:* 180 - Nighttime | |||
:You'll also have to turn down the shadow alpha in your <code>shadow_control</code> entity - try changing the Shadow Color variable to something such as 50 50 50.|since=EP2}} | |||
[[File:Sunspreadangle_preview.gif|thumb|350px|Different SunSpreadAngle values. The quality of the soft shadows depend on compile options as well. Click if preview is not animated.]] | |||
{{KV|Specular Color|intn=specularcolor|color255|Color of the light that reflects off of certain surfaces. (i.e. water).|only={{Insurgency}}{{doi}}}} | |||
==Flags== | |||
{{Fl|1|Initially Dark|Only works when the <code>light_environment</code> is named, and it must be added with SmartEdit off by putting in a 'spawnflags' key with a value of 1 (Hammer doesn't allow setting non-FGD flags in the flags tab).|nofgd=1}} | |||
== External links == | |||
* [https://www.nodraw.net/2011/01/sunspreadangle Nodraw.net - brief explanation with screenshots of various sunspreadangle values] | |||
[[Category:Lighting]] | [[Category:Lighting]] |
Revision as of 10:48, 12 July 2024

light_environment
is a point entity available in all Source games.
It casts parallel directional lighting from the toolsskybox texture to approximate the light cast from the Sun or Moon.


- The
light_environment
still inherits most properties from the basic light entity. This means that thelight_environment
can be named (by adding thetargetname
keyvalue with SmartEdit off) and even disabled/enabled, although it will look very crude as vanilla VRAD does not calculate bounced lighting for named lights. Furthermore, there is a bug in games other thanCounter-Strike: Global Offensive where light from a named
light_environment
on static props will break when the light is changed. - The properties of this entity apply to the whole map. Using more than 1 entity for areas with a skybox toolsskybox texture does not create errors provided If all instances of light_environment have identical info. It is pointless to have more than 1 though.

- You can have only one light_environment and toggle it. Others will not work.
- Ambient light can't be toggled and doesn't work with custom appearances.
- If you use a named light_environment, env_cascade_light's shadows will not display on world geometry.
- With a custom appearance, env_cascade_light will not display shadows on world geometry. [todo tested in ?]
Skybox lighting

Keyvalues
- Pitch Yaw Roll (Y Z X) (angles) <QAngle>
- This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
- Pitch (pitch) <angle>
- Overrides the pitch value in Angles, even if omitted, so it needs to be specified. Contrary to Angles, the rotation of this pitch is measured counter-clockwise from the horizontal, so that 90 is straight up, while -90 is straight down. (It's simply the negative of a normal pitch value.)
- BrightnessHDR (_lightHDR) <color255 + int>
- Override for Brightness when compiling HDR lighting. Defaults to
-1 -1 -1 1
, which means "same as LDR".
- BrightnessScaleHDR (_lightscaleHDR) <float>
- Amount to scale the direct light by when compiling for HDR.
- AmbientHDR (_ambientHDR) <color255 + int>
- Override for Ambient when compiling HDR lighting. Defaults to
-1 -1 -1 1
, which means "same as LDR".
- AmbientScaleHDR (_AmbientScaleHDR) <float>
- Amount to scale the ambient light by when compiling for HDR.
- SunSpreadAngle (SunSpreadAngle) <float> (in all games since
)
- The angular extent of the sun for casting soft shadows. Higher numbers are more diffuse. 3 is a good starting value. Remember: on cloudy days, the shadows will be blurred because the sunlight is being diffused by clouds.
- Suggested starting values:
- 1 - Sunny day; reduces aliasing on low-res lightmaps without increasing prominence of penumbras, and subtly softens high-res lightmaps.
- 3 - Slightly overcast, but still sunny
- 5 - Valve's recommended starting value
- 90 - Hazy day
- 135 - Cloudy, rainy, and or foggy day
- 180 - Nighttime
- You'll also have to turn down the shadow alpha in your
shadow_control
entity - try changing the Shadow Color variable to something such as 50 50 50.
- Specular Color (specularcolor) <color255> (only in
)
- Color of the light that reflects off of certain surfaces. (i.e. water).
Flags
- Initially Dark : [1] !FGD
- Only works when the
light_environment
is named, and it must be added with SmartEdit off by putting in a 'spawnflags' key with a value of 1 (Hammer doesn't allow setting non-FGD flags in the flags tab).