【发布时间】:2014-01-10 05:36:23
【问题描述】:
我的场景中有一个DirectionalLight。当我第一次创建灯光时,阴影覆盖了预期的区域。当视口调整大小(画布大小)时,我会更新 shadowCamera 参数(右、左、上、下)以及灯光的位置和目标,但阴影仅覆盖更新前的区域。
我必须设置什么标志才能正确更新阴影以反映新设置?
【问题讨论】:
标签: three.js
我的场景中有一个DirectionalLight。当我第一次创建灯光时,阴影覆盖了预期的区域。当视口调整大小(画布大小)时,我会更新 shadowCamera 参数(右、左、上、下)以及灯光的位置和目标,但阴影仅覆盖更新前的区域。
我必须设置什么标志才能正确更新阴影以反映新设置?
【问题讨论】:
标签: three.js
这是您在运行中更新阴影相机时需要遵循的模式:
light.shadowCameraLeft = -100;
light.shadowCameraRight = 100;
light.shadowCamera.left = light.shadowCameraLeft;
light.shadowCamera.right = light.shadowCameraRight;
...
light.shadowCamera.updateProjectionMatrix();
three.js r.64
【讨论】: