有很多因素可以控制阴影质量。
据我观察,你的阴影相机的左、右、上、下设置过大,导致阴影覆盖了太大的区域。
阴影投射灯光非常消耗资源,因此我建议避免尝试使用多个灯光来补偿。
尝试减少 light.shadow.camera 的 left/right/top/bottom 值,以更好地聚焦于物体所在的区域。还可以尝试将阴影图像大小增加到 1024 或 2048 平方像素。
另外,使用 THREE.PCFShadowmapping 而不是默认值也会有所帮助。这将使阴影边缘更加平滑。
编辑:还可以尝试 PCFSoftShadowMapping…速度较慢,但能大大平滑阴影边缘。
正确设置阴影映射是一个棘手的过程,需要进行许多微调。
此外,尝试将 DirectionalLightHelper 和相应灯光的 CameraHelper 配对使用,可以帮助您确定阴影投射区域的大小和指向。