我想移动并旋转相机,但将PointLight保持在相对于相机的相同位置。我已经阅读了一堆线程说你可以将灯光对象添加到相机而不是场景。像这样:
pointLight = new THREE.PointLight( 0xffffff );
pointLight.position.set(1,1,2);
camera.add(pointLight);
然而,这对我来说似乎不起作用。相反,我现在当相机改变时通过将相机matrixWorld应用到我想要的相对光位置来设置灯的位置。这样可行,但将灯光添加到相机似乎是一个更清洁的解决方案。
我做错了什么或者是否将灯光对象添加到相机中?
谢谢!
答案 0 :(得分:11)
如果相机有子对象,例如“PointLight'”,则需要将相机添加到场景中。
scene.add( camera );
three.js r.68