好,这是问题所在,

实际上,我试图实现的目标是将某些聚光灯放置在基本的three.js示例中。

这是我尝试设置聚光灯目标位置的方法:

var light = new THREE.SpotLight(0xFFFFFF);
light.position.set(0,130,0);
light.target.position.set(200,-130,400);
scene.add(light);

即使当我console.log target.position。(x,y,z)给我正确的值时,聚光灯仍会照亮点(0,0,0)。

这是我用我的全部例子做的一个 fiddle 。

http://jsfiddle.net/1xfno37y/7/

最佳答案

更改后(例如,设置位置),您必须更新light.target:
light.target.updateMatrixWorld();
或者只是将light.target添加到场景中:
scene.add( light.target );
Three.js r.71

http://jsfiddle.net/1xfno37y/19/

进一步阅读: Critical bug with spotLight.target.position #5555

关于javascript - three.js SpotLight方向(方向)问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32203806/

10-13 06:21