Three.js js模型上的点光源和PlaneGeometry不一样
我有PlaneGeometry square和从Blender导出的同一个square在点光源下,PlangeGeometry的行为很奇怪——当点光源真正靠近square的中心时,square会变得更暗。这种情况不会发生在model square上 这是我的几何体材质设置:Three.js js模型上的点光源和PlaneGeometry不一样,three.js,Three.js,我有PlaneGeometry square和从Blender导出的同一个square在点光源下,PlangeGeometry的行为很奇怪——当点光源真正靠近square的中心时,square会变得更暗。这种情况不会发生在model square上 这是我的几何体材质设置: var map = THREE.ImageUtils.loadTexture( "dirt.png"); map.wrapS = map.wrapT = THREE.RepeatWrapping; map.anisotrop
var map = THREE.ImageUtils.loadTexture( "dirt.png");
map.wrapS = map.wrapT = THREE.RepeatWrapping;
map.anisotropy = 16;
var material = new THREE.MeshLambertMaterial( { ambient: 0xbbbbbb, map: map, side: THREE.DoubleSide } );
var object = new THREE.Mesh( new THREE.PlaneGeometry( SQUARE_SIZE, SQUARE_SIZE, 1, 1 ), material );
这是我导入的模型js摘录:
"materials" : [ {
"DbgColor" : 15658734,
"DbgIndex" : 0,
"DbgName" : "dirt",
"blending" : "NormalBlending",
"colorAmbient" : [0.800000011920929, 0.800000011920929, 0.800000011920929],
"colorDiffuse" : [0.800000011920929, 0.800000011920929, 0.800000011920929],
"colorSpecular" : [0.5, 0.5, 0.5],
"depthTest" : true,
"depthWrite" : true,
"mapDiffuse" : "dirt.png",
"mapDiffuseWrap" : ["repeat", "repeat"],
"shading" : "Lambert",
"specularCoef" : 50,
"transparency" : 1.0,
"transparent" : false,
"vertexColors" : false
}],
我可以使平面几何图形像导入的模型一样工作吗?这里解释了发生这种情况的原因: 你有两个选择:
MeshPhongMaterial
,或新的三个平面几何体(正方形,正方形,10,10)代码>
three.js r.66phong比lambert消耗的CPU多吗?不,稍微多消耗一点GPU。