This article relates to the game "Half-Life: Alyx". Click here for more information.
This article relates to the workshop tools for "Half-Life: Alyx". Click here for more information.
This article's documentation is for Source 2. Click here for more information.

使用体积光

From Valve Developer Community
Jump to: navigation, search
English

起源2中基于物理的体积光

在Half-Life: Alyx SFM中您仍然可以使用旧的SFM灯光开启体积光功能(点击这里查阅之前讨论游戏灯光和SFM灯光的文档),然而Half-Life: Alyx在新的游戏灯光中加入了一些新的体积光效果,我们需要采取一些额外的步骤才能启用它们。

前提

想要使用游戏灯光的体积光,您必须使用一张已经开启了体积光功能的地图(例如,在“a1_intro_world”这个地图中Alyx的藏身处的天窗附近就有体积光),或者您必须在自己的自定义地图中放置一个名为“env_volumetric_fog_controller”的实体来启用体积光功能。有关更多信息,请参见关卡设计文档

就像起源2中新的基于物理的着色器一样,体积光系统也是围绕着体积基于物理的,这就是为什么它的启用是基于每个地图而不是基于每个灯光(但仍然可以在需要的时候禁用)。因此,将场景组合在一起时必须小心,并要了解体积光将如何与它们交互。它们没有像以前那样可以精确调整的控件,因为它是对引擎中体积雾更真实的描述。

启用步骤

您需要先创建一个带有游戏灯光的工程(点击这里了解如何录制游戏灯光)。正交光(Ortho)、点光源(Point)和聚光灯(Spot)都支持开启体积光,但是太阳光(Sun)不能开启体积光。您可以使用正交光开启体积光来代替太阳的体积光。

选择上述三种可开启体积光的游戏灯光其一,转到它的灯光元素查看器(Show in Element Viewer -> Light)中,里面有一个名为“fogLightingMode”的选项,更改它的值就可以控制体积光的关闭和开启的模式,该选项在Hammer中就对应着灯光实体的“Volumetric Fogging”属性。 将“fogLightingMode”选项的值设置为2就相当于将Hammer中灯光实体的“Volumetric Fogging”属性设置为了“Dynamic”,这对于SFM是理想的选择。
SFM中“fogLightingMode”的值与Hammer中“Volumetric Fogging”属性的对应关系如下:

fogLightingMode
Volumetric Fogging
0
None
1
Baked
2
Dynamic
3
Baked - no shadows
4
Dynamic - no shadows

设置完“fogLightingMode”的值之后,现在在使用env_volumetric_fog_controller实体的地图上和/或在有效的体积或空间中将显示体积光(如果地图中没有env_volumetric_fog_volume实体,体积光将会渲染到每个地方),它们将与您的SFM模型发生互动!

您还可以通过“fogContributionStrength”滑条来调整体积光的强度,该滑条在所有支持体积光的灯光的属性中都可以找到。

相关文档