在我使用Three.js(r52)的游戏中,我在点亮照明方面遇到了一些麻烦。
这个地下城级别使用简单的长方体作为墙壁和屋顶。出于某种原因,每个网格的开始处的照明都是明亮的,但是然后朝向另一侧逐渐变暗。
请注意,地板没有人工制品,这是因为它是一个巨大的四边形。
使用的灯是PointLight。我网格的材质就像这样创建:
var texture = new THREE.Texture( image,
new THREE.UVMapping(),
THREE.RepeatWrapping,
THREE.RepeatWrapping,
THREE.NearestFilter,
THREE.NearestMipMapLinearFilter );
return new THREE.MeshLambertMaterial({
map : texture
});
长方体从3ds max导出OBJ模型,使用gw :: OBJ-exporter转换。这些是我的导出设置:
有什么想法吗?
答案 0 :(得分:3)
显然你遇到的问题与此主题相同:https://github.com/mrdoob/three.js/issues/1258
你需要使用像material.shading = THREE.FlatShading;
这样的东西