Zh/HDR Lighting Settings: Difference between revisions
(Created page with "{{otherlang2 |title=HDR光照设置 |en=HDR_Lighting_Settings }} Category:Level Design 译者:桃李果树(百度ID) {{注意|此翻译仅供参考。本译文是...") |
m (obsolete language category) |
||
(12 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LanguageBar|title = HDR光照设置}} | ||
|title=HDR光照设置 | {{source topicon|suf=:zh-cn}} | ||
| | {{ACategory|Level Design}}{{ACategory|Lighting}} | ||
}} | |||
译者:桃李果树(百度ID) | 译者:桃李果树(百度ID) | ||
{{ | {{Note|此翻译仅供参考。本译文是翻译2009年1月8日 (四) 18:22修改的文章。请以最新修改日期的原文为准。}} | ||
== 概述 == | == 概述 == | ||
本文解释了一些可用于HDR光照的高级技术。有关标准HDR方法的说明,请阅读{{L|HDR_Lighting_Basics|HDR光照基础}}。 | |||
== 添加一个自定义的<code>env_tonemap_controller</code>== | |||
[[File:hdr_logic_auto.png|thumb|250px|使用<code>logic_auto</code>来设置<code>env_tonemap_controller</code>值。点击放大。]] | |||
我们的示例地图还包含演示HDR效果的实体。第一个需要放置的实体是{{ent:zh-cn|env_tonemap_controller}},该实体可以控制地图中的HDR设置,并允许我们覆盖默认的HDR值。继续并将其命名为<code>tonemap</code>。 | |||
现在我们可以通过几种方法来触发这个实体,在这里我们展示了一个用于在进入地图时修改设置的{{ent:zh-cn|logic_auto}}实体。在<code>env_tonemap_controller</code>上的有用的输入是: | |||
;<code>SetAutoExposureMax</code>:设置曝光即将出现的最亮程度。 | |||
;<code>SetAutoExposureMin</code>:设置曝光即将出现的最暗程度。 | |||
;<code>SetBloomScale</code>:设置在地图上的光晕效果的比例。 | |||
<code>SetAutoExposureMax</code> | |||
<code>SetAutoExposureMin</code> | |||
<code>SetBloomScale</code> | |||
=== 重要提示 === | === 重要提示 === | ||
如果该地图使用{{ent:zh-cn|env_tonemap_controller}},则'''不能直接使用'''用于更改HDR参数的控制台命令。相反,<code>env_tonemap_controller</code>实体输入必须被触发才能更改设置。这可以通过标准的{{L|Inputs and Outputs|输入与输出}}或者使用<code>ent_fire</code>命令来完成,其命令格式如下: | |||
如果该地图使用 | |||
<pre>ent_fire <env_tonemap_controller name> <input name> <new value></pre> | <pre>ent_fire <env_tonemap_controller name> <input name> <new value></pre> | ||
Line 40: | Line 29: | ||
ent_fire tonemap_global SetAutoExposureMax 6 | ent_fire tonemap_global SetAutoExposureMax 6 | ||
ent_fire tonemap_global SetAutoExposureMin .8 | ent_fire tonemap_global SetAutoExposureMin .8 | ||
</pre> | </pre>{{clr}} | ||
[[ | == 添加可触发的<code>env_tonemap_controller</code> == | ||
[[File:hdr_trigger_multiple.png|thumb|250px|你也可以使用触发器来设置<code>env_tonemap_controller</code>值。点击放大。]] | |||
{{ent:zh-cn|env_tonemap_controller}}也可以用{{ent:zh-cn|trigger_multiple}}触发。在这里,我们看到一个触发器,当玩家进入房屋时会改变HDR值。先声明一下这只是单人游戏,因为如果这些数值发生变化,他们会在全局意义上影响所有玩家。 | |||
{{Note|由于<code>env_tonemap_controller</code>会影响所有客户端,因此以这种方式触发它们通常仅适用于单人游戏。}} | |||
{{ | {{clr}} | ||
== 为LDR和HDR模式添加不同的光照数值 == | == 为LDR和HDR模式添加不同的光照数值 == | ||
[[File:hdr_light_env.png|thumb|250px|可以为<code>light_environment</code>实体设置单独的HDR值。点击放大。]] | |||
[[ | |||
使用<code>lights.rad</code>的所有实体灯光和纹理灯光都可以包含两组用于 LDR + HDR 的光照。一般来说,由于一些原因,HDR光照值需要比LDR值略低。首先HDR具有自动曝光功能,可以补偿较暗的区域并使空间变亮。其次,光晕效果有过度照亮某些表面的倾向,因此调低亮度值也有助于这方面的工作。 | 使用<code>lights.rad</code>的所有实体灯光和纹理灯光都可以包含两组用于 LDR + HDR 的光照。一般来说,由于一些原因,HDR光照值需要比LDR值略低。首先HDR具有自动曝光功能,可以补偿较暗的区域并使空间变亮。其次,光晕效果有过度照亮某些表面的倾向,因此调低亮度值也有助于这方面的工作。 | ||
=== 环境光照 === | === 环境光照 === | ||
以下是使用HDR设置的 | 以下是使用HDR设置的{{ent:zh-cn|light_environment}}实体的屏幕截图。<code>BrightnessHDR</code>和<code>AmbientHDR</code>的默认值是<code>(-1, -1, -1, 1)</code>,这意味着使用与LDR相同的设置。要更改HDR值,只需在这些字段中输入新值。{{clr}} | ||
=== HDR纹理光照 === | === HDR纹理光照 === | ||
[[File:hdr_lights_rad.png|thumb|250px|可以使用<code>lights.rad</code>为纹理光设置单独的HDR值。点击放大。]] | |||
控制“纹理”光照值的{{ent:zh-cn|lights.rad}}文件也允许独立的HDR设置。上面突出显示的数字显示了第二组4个数字如何应用于HDR值(红,绿,蓝,亮度),如果未输入第二组数字,vrad默认会使用LDR设置。{{clr}} | |||
=== 其他光照 === | === 其他光照 === | ||
其他类型的光源(包括{{ent:zh-cn|light}}和{{ent:zh-cn|light_spot}})也具有HDR值。你可以按照为{{ent:zh-cn|light_environment}}实体设置灯光的相同方式为这些灯光设置HDR值。 | |||
其他类型的光源(包括 | |||
== 更多HDR控制台命令 == | == 更多HDR控制台命令 == | ||
以下是{{L|Developer Console|控制台}}可用于动态修改引擎中HDR设置的命令列表。 | |||
以下是 | |||
<code>mat_dynamic_tonemapping 0/1</code>(默认值 1) | <code>mat_dynamic_tonemapping 0/1</code>(默认值 1) | ||
Line 92: | Line 76: | ||
== 参见 == | == 参见 == | ||
* {{L|HDR_Lighting_Basics|HDR光照基础}} | |||
* [[HDR Skybox Creation|创建HDR天空盒]] {{en}} | |||
* {{ent:zh-cn|env_tonemap_controller}} | |||
[[HDR Skybox Creation|创建HDR天空盒]] | |||
Latest revision as of 04:15, 22 August 2024
译者:桃李果树(百度ID)

概述
本文解释了一些可用于HDR光照的高级技术。有关标准HDR方法的说明,请阅读HDR光照基础 。
添加一个自定义的env_tonemap_controller
我们的示例地图还包含演示HDR效果的实体。第一个需要放置的实体是env_tonemap_controller,该实体可以控制地图中的HDR设置,并允许我们覆盖默认的HDR值。继续并将其命名为tonemap
。
现在我们可以通过几种方法来触发这个实体,在这里我们展示了一个用于在进入地图时修改设置的logic_auto实体。在env_tonemap_controller
上的有用的输入是:
SetAutoExposureMax
- 设置曝光即将出现的最亮程度。
SetAutoExposureMin
- 设置曝光即将出现的最暗程度。
SetBloomScale
- 设置在地图上的光晕效果的比例。
重要提示
如果该地图使用env_tonemap_controller,则不能直接使用用于更改HDR参数的控制台命令。相反,env_tonemap_controller
实体输入必须被触发才能更改设置。这可以通过标准的输入与输出 或者使用ent_fire
命令来完成,其命令格式如下:
ent_fire <env_tonemap_controller name> <input name> <new value>
例如,如果env_tonemap_controller
被命名为tonemap_global
,则可以使用以下命令:
ent_fire tonemap_global SetBloomScale 3 ent_fire tonemap_global SetAutoExposureMax 6 ent_fire tonemap_global SetAutoExposureMin .8
添加可触发的env_tonemap_controller
env_tonemap_controller也可以用trigger_multiple触发。在这里,我们看到一个触发器,当玩家进入房屋时会改变HDR值。先声明一下这只是单人游戏,因为如果这些数值发生变化,他们会在全局意义上影响所有玩家。

env_tonemap_controller
会影响所有客户端,因此以这种方式触发它们通常仅适用于单人游戏。为LDR和HDR模式添加不同的光照数值
使用lights.rad
的所有实体灯光和纹理灯光都可以包含两组用于 LDR + HDR 的光照。一般来说,由于一些原因,HDR光照值需要比LDR值略低。首先HDR具有自动曝光功能,可以补偿较暗的区域并使空间变亮。其次,光晕效果有过度照亮某些表面的倾向,因此调低亮度值也有助于这方面的工作。
环境光照
以下是使用HDR设置的light_environment实体的屏幕截图。BrightnessHDR
和AmbientHDR
的默认值是(-1, -1, -1, 1)
,这意味着使用与LDR相同的设置。要更改HDR值,只需在这些字段中输入新值。
HDR纹理光照
控制“纹理”光照值的lights.rad文件也允许独立的HDR设置。上面突出显示的数字显示了第二组4个数字如何应用于HDR值(红,绿,蓝,亮度),如果未输入第二组数字,vrad默认会使用LDR设置。
其他光照
其他类型的光源(包括light和light_spot)也具有HDR值。你可以按照为light_environment实体设置灯光的相同方式为这些灯光设置HDR值。
更多HDR控制台命令
以下是控制台 可用于动态修改引擎中HDR设置的命令列表。
mat_dynamic_tonemapping 0/1
(默认值 1)
- 启用或禁用动态(自动)HDR色调映射。
mat_autoexposure_max 0-20
(默认值 2)
- 设置即将到达的最亮(最大)曝光度。在大多数情况下其数值不应超过20。
mat_autoexposure_min 0-20
(default .5)
- 其中0是即将到达的最暗(最小)曝光度。在大多数情况下其数值不应超过20。其典型值小于1。
mat_hdr_tonemapscale 0-20
- 适用于
mat_dynamic_tonemapping
设置为0(关闭)的情况。设置一个明确的曝光值。在大多数情况下其数值不应超过20。
mat_disablebloom 0/1
(default 1)
- 禁用光晕效果。
mat_bloomscale 0-16
(default 1)
- 设置HDR光晕效果的次数(比例)。较高的值等于更多的光晕效果。在大多数情况下其数值不应超过16。