我有一个带有简单UI的Three.js场景。复选框代表对象receiveShadow
属性的布尔值。在运行时,当我切换此复选框时,它不会反映场景中的更改。
如果我对castShadow
做完全相同的事情,它确实可以工作。
您可能需要一些导入代码片段:renderer.shadowMapEnabled = true;
material.needsUpdate = true;
如何为receiveShadow
启用此功能?
最佳答案
如果动态切换receiveShadow
属性,则必须为材料设置needsUpdate
标志。
mesh.receiveShadow = true; // or false
mesh.material.needsUpdate = true;
然后,渲染器将
needsUpdate
标志重置为false
。three.js r.73
关于javascript - 如何在Three.js中动态切换“receiveShadow”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34696728/