跳到主要内容

阴影

阴影可以让场景变得真实。

但是阴影是非常吃性能的,需要谨慎使用。

假设有 20 个物体、5 个光源,那么整个场景会绘制 6 次。

第一次 20 个物体根据 光源 #1 计算阴影、第二次 20 个物体根据 光源 #2 计算阴影、以此类推

最后一次根据前面 5 次渲染的结果,计算阴影的最终效果。

单单对于一个 PointLight 来说,场景需要计算 6 次(上下左右前后 6 个方向)。

两种常用的解决方案:

  1. 存在多个光源,但只允许其中一个 DirectionalLight 投射阴影。
  2. 关闭阴影,放一个灰度图纹理在平面上假装阴影。