就像标题一样,这可能吗?我怎么能这样做?
我希望spotLight的移动X和Z位置跟随相机。 Y位置仍固定在场景中。
我试过了:
spotLight = new THREE.SpotLight( 0xffffff );
camera.add( spotLight );
....
function animate() {
spotLight.position.y = scene.position.y + 800;
request = requestAnimationFrame(animate);
controls.update();
render();
}
但是,SpotLight的所有XYZ位置仍然随着相机移动。
答案 0 :(得分:2)
作为儿童对象是不可能的。子对象的矩阵与其父母的矩阵有关。我想你可以尝试用相机移动聚光灯而不用制作光相机的孩子。
spotLight = new THREE.SpotLight( 0xffffff );
// ....
function animate() {
spotLight.position = camera.position.clone();
spotLight.position.y = scene.position.y + 800;
request = requestAnimationFrame(animate);
controls.update();
render();
}