阴影
阴影可以让场景变得真实。
但是阴影是非常吃性能的,需要谨慎使用。
假设有 20 个物体、5 个光源,那么整个场景会绘制 6 次。
第一次 20 个物体根据 光源 #1 计算阴影、第二次 20 个物体根据 光源 #2 计算阴影、以此类推
最后一次根据前面 5 次渲染的结果,计算阴影的最终效果。
单单对于一个
PointLight
来说,场景需要计算 6 次(上下左右前后 6 个方向)。
两种常用的解决方案:
- 存在多个光源,但只允许其中一个
DirectionalLight
投射阴影。 - 关闭阴影,放一个灰度图纹理在平面上假装阴影。