light_environment

From Valve Developer Community
Revision as of 00:58, 3 April 2018 by Ljj (talk | contribs) (Created page with "{{otherlang2 |title=Light_environment |en = Light_environment |ru = Light_environment:ru }} 译者:桃李果树(百度ID) {{注意|此翻译仅供参考。本译文是...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
English Русский

译者:桃李果树(百度ID)

注意:此翻译仅供参考。本译文是翻译自2017年9月2日 (六) 08:54修改的文章,请以最新修改日期的原文为准。


Light environment.png
Warning: Display title "light_environment" overrides earlier display title "Light_environment".light_environment is an internal point entity available in all Source games. 它从toolsskybox纹理投射平行定向照明以近似从太阳或月亮投射的光线。
注意:该实体的属性适用于整个地图。如果所有light_environment实例具有相同的信息,则对具有天空盒toolsskybox纹理的区域使用多于1个实体不会出现错误。尽管多于1是毫无意义的。
提示:env_sunshadow_control一起使用。

天空盒光照

Toolsskybox.gif
天空盒照明通过每一个toolsskybox纹理的固体进入地图。其基本属性由三个实体组合使用来控制(有些游戏是四个实体):
  • light_environment指定直射日光的方向、颜色和强度,以及漫反射光的颜色和强度。
  • shadow_control实体指定light_environment所创建的动态阴影的方向、颜色和距离。如果没有该实体,动态阴影将会有bug且不可配置。
  • env_sun在天空盒中放置一个发光的图标来表示太阳在天空中的明显位置。
  • env_cascade_light给地图投射一个精细的实时阴影,其设置通常来自light_environment。只能用于<Counter-Strike: Global Offensive><Insurgency><Black Mesa (Source)>

要使它们有意义,确保以上每个实体在地图中只有一个,并且实体的Pitch and Yaw <角度>设置为相同的值。(Pitch相当于太阳的仰角,而Yaw则类似于指南针轴承。)

这些照明设置——方向、颜色、强度等,是以具体2D天空盒的图像而定的。天空列表文章提供了一些Valve的天空盒的设置。worldspawn实体定义了使用的天空盒。另外请注意,如果env_fog_controller的设置与使用的特定天空盒不对应,雾气看起来会不正确。

注意:
Pitch会对light_environmentenv_sun强制,但不能对shadow_controlPitch的强制也不能被关闭,且它的旋转是从水平方向逆时针开始的(因此竖直向下是-90°),而<角度> Pitch的旋转是顺时针的(因此竖直向下是+90°)。一个应对方法是确保你的Pitch强制只重复<角度>的值;例如,如果你的shadow_controllight_environmentenv_sun<角度>是「45 -60 0」,把Pitch设置为「-45」。

键值

Pitch <angle>
覆盖角度Pitch值,即使保留为0,也需要指定。与角度相反,这个Pitch的旋转是从水平方向时针测量的,所以90是直线上升的,而-90是直线下降的。(这只是正常Pitch的负值。)
Brightness <color>
直射阳光的颜色和亮度。
Ambient <color>
漫射天窗的颜色和亮度。
BrightnessHDR <color>
编译HDR照明时覆盖Brightness。默认为-1 -1 -1 1,这意味着“与LDR相同”。
BrightnessScaleHDR <float>
用于编辑HDR时缩小直射光的量。
AmbientHDR <color>
编译HDR照明时覆盖Ambient。默认为-1 -1 -1 1,这意味着“与LDR相同”。
BrightnessScaleHDR <float>
用于编译HDR时缩放环境光的量。
SunSpreadAngle (New with Half-Life 2: Episode Two / Source 2007) <float>
用于投射柔和阴影的太阳的角度范围。数字越高越弥漫。5是一个很好的初始值。请记住:在阴天,阴影会变得模糊,因为太阳光正在被云层扩散。尝试90作为朦胧的日子,并使用135作为阴天、雨和雾。如果你尝试夜间气氛,有时你需要高达180。你还必须关闭shadow_control实体中的alpha阴影——尝试将阴影颜色(Shadow Color)变量更改为某些值如50 50 50。

Angles:

Pitch Yaw Roll (Y Z X) <angle>
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.

额外链接

Light_environment的相关教程(俄语)

教程由Project-S创建