我已经用Lambert材料正确加载了球体网格。
我想在点击交叉点的位置添加光源。
target
=点击了对象。
我点击的to
= vector3。
在dblclick事件监听器上我做:
var newLight = new THREE.PointLight( 0x808F8F,20 );
newLight.position.set(to.x,to.y,to.z);
scene.add( newLight );
newLight.updateMatrix();
newLight.updateMatrixWorld();
target.material.needsUpdate = true;
但没有任何反应,只有当我将antoher对象添加到场景中时光才可见,而不是在我点击的目标对象上。
我如何强制重新计算目标物体上的光源?
答案 0 :(得分:0)
我最近遇到了一个非常类似的问题,你需要更新受灯光影响的所有材料。 例如:
for(i in scene.children){
if(scene.children[i].material) scene.children[i].material.needsUpdate = true;
}