THREE.js:看看你要去哪里

时间:2015-01-19 23:08:19

标签: javascript three.js

如果我使用像

这样的代码移动对象
dx = [not important];
dy = [not important];
dz = [not important];
d = new THREE.Vector3(dx,dy,dz);
mesh.postion.add(d);

如何让我的网状物显示它的位置?我试过了

mesh.lookAt(d); // fails
mesh.lookAt(copyOfMeshPosition.add(d)) // fails

并将mesh.up设置为(1,0,0),(0,1,0)和(0,0,1)。

1 个答案:

答案 0 :(得分:0)

你的问题是lookAt方法在 world 空间中采用坐标,而不是局部空间。

如果您希望(3,5,0)处的物体朝(dx,dy,dz)方向看,您需要在世界中查看该方向上的一个点坐标。

即。点(3,5,0)+(dx,dy,dz)

e.g。

d = new THREE.Vector3(dx, dy, dz);
mesh.postion.add(d);
mesh.lookAt(new THREE.Vector3().addVectors(mesh.position, d));