在three.js r71 the ambient
property has been removed from THREE.Material
。
之前我使用ambient
来设置我在网格物体上使用的材质的正确渲染(光照)效果。现在我所有网格的外观发生了巨大变化。
如何让我的材料与r71之前完全一致?
答案 0 :(得分:3)
这就是为什么......
据@WestLangley说;我引自his post in the discussion(链接自@pprchsvr):
material.ambient
是材料的环境反射率。对于真实世界的物体,它通常应匹配材料的漫反射率material.color
。 (毕竟,物体不知道光子来自何处。)我们选择简化API,并硬连线
material.ambient
以匹配material.color
。因此,material.ambient
已被删除。
这意味着您将无法再设置与材质颜色不同的环境颜色,据我所知,没有"快速修复"获得与以前相同的渲染结果。
一种可能的解决方案是尝试通过调整/更改场景中的材质颜色和环境光线来使材质像以前一样显示。
另请参阅THREE.AmbientLight和THREE.MeshBasicMaterial(以及其他材料)的three.js文档以供参考。
或者,您可以使用THREE.ShaderMaterial创建自己的着色器材质,您可以在其中(重新)创建一个允许您明确设置环境颜色的着色器。
答案 1 :(得分:1)