我有一个关于导出Blender场景加载到Three.js的问题,重点是照明。
在这种情况下,我们正在使用Blender创建我们的3D环境。在Blender中,场景看起来应该是这样的。这是一个例子,我用一个能量点为50的单点光源和距离:30。我已经将这些值设置得如此之高,因此问题在Three.js中清晰可见。这是一个来自搅拌机的屏幕:
现在,当使用Blender的Three.js导出器导出并使用SceneLoader导入时,Three.js中的结果为:
不是丑陋的亮度,问题在于它只照亮场景的一部分。看起来Three.js错误地点亮了对象的不同三角形。我们的3D艺术家使用四边形在Blender中制作对象。
为了确保问题不在导出和导入过程中,我在三个位置,距离和亮度相同的情况下创建了一个PointLight。这给出了与上面完全相同的结果。
我也尝试过使用不同的灯光。到目前为止,只有太阳光(三个方向)似乎给出了正确的结果。从搅拌机出口时,其他灯根本不起作用,但这是本文范围之外的问题。
我的问题是:它实际上是Three.js创建的三角形会导致问题吗?是否会让Blender中的三角形开始修复此问题,或者是否存在可能解决问题的不同方法?
编辑:使用Phong垫固定它,但照明似乎错误地分为对象: