静态光源

lighting_overview_banner_001.png

本页面的内容:

静态光源(Static Light) 是指在运行时不能以任何方式改变或移动的光源。它们仅在光照贴图中进行计算,一旦处理完成后,不会再有进一步的性能影响。可移动对象不能喝静态光源进行交互,所以静态光源的用处是非常有限的。

在三种不同的光源可移动性属性中,静态光源的质量中等、可变性最低、性能消耗也最少。

因为静态光源仅使用光照贴图,所以在游戏可玩之前它们的阴影就烘焙好了。这意味着它们不能给移动(动态)对象产生阴影,正如我们在示例中所看到的。但是,当照亮的对象也是静态的时,静态光源可以产生区域(接触)阴影。这是通过调整 光源半径 属性实现的。然而,应该注意的是,为了获得较好的阴影效果,接收柔和阴影的表面需要合理设置它们的光照贴图分辨率。

静态光源的主要应用场景是为低功率的移动平台准备的。

光源半径

正如上面所提到的, 静态光源光源半径 有一个额外的作用是使得它投射的阴影变得柔和,其工作原理和很多 3D 渲染包中的区域光源类似。下图中,图片 左侧 的光源具有较小的 光源半径,投射了生硬的阴影。图片 右侧 的光源具有较大的 光源半径,因此投射了较为柔和的阴影。

LI_lightRadiusShadows.png

光照贴图分辨率

光照贴图分辨率 能够用来控制静态光源产生的预烘培光照信息的细节程度。

在静态网格体组件上,光照贴图分辨率要么设置在静态网格体的资源上,或者通过勾选 Override Lightmap Res 选项框并设置数值。较大的数值意味着较高的分辨率,但也意味着更长的构建时间和内存消耗。

然而,在 BSP 表面属性上,光照贴图分辨率是由 Lightmap Resolution 属性控制,这其实是一个密度属性。因此在这里,较低的数值会产生较高分辨率。

Lightmap Resolution 4.0

Lightmap Resolution 16.0