我想创建一个黑暗的场景。玩家手中只有手电筒,所以这是场景中唯一的灯。

因此,该区域的其余部分应没有灯光。也许是洞穴或黑暗的森林?

在《口袋妖怪》中,您在地牢中有这种效果

c# - Unity建立除了火炬之外没有灯光的黑暗场景-LMLPHP

这是我的粗略草图

c# - Unity建立除了火炬之外没有灯光的黑暗场景-LMLPHP

因此,当我要将场景的定向光设置为完全黑色时,仍然可以看到足够好的效果。

我如何归档黑暗世界的这些影响?

我不想在播放器周围使用纹理或类似的东西。也许您仍然可以看穿黑暗,但真的非常糟糕。

最佳答案

使用此场景作为如何执行此操作的示例:

https://github.com/Galandil74/Unity-Spotlights-Example

基本上,就像Lestat所说的那样,您可以通过更改RenderSettings.ambientLight来设置整体亮度,然后创建带有火炬效果的手电筒游戏,使用带有纹理cookie的定向光游戏对象,以便仅照亮屏幕的一部分/形状。

请记住,要通过cookie纹理获得完全照明,必须将灯光的intensity属性设置为1 - RenderSettings.ambientLight.grayScale(如果是定向灯光)。

我更喜欢使用定向光,因为您可以通过cookie纹理的alpha通道来控制效果。

并且,如果您正在使用精灵(用于背景等),如果希望它们受到环境光的影响,请记住使用Sprites/Diffuse材质。

09-11 19:23