我想要实现一点点TPS(相机跟随播放器)。我将相机添加到一个立方体(当他移动时代表玩家),并在this fiddle中显示相机和立方体的坐标。相机也跟随立方体,但您可以看到相机坐标没有变化。没有问题但是当我想使用拣选时,坐标是错误的,因为它取决于相机。
我就这样做了:
cube.add(Camera);
有人有想法吗?
答案 0 :(得分:0)
将相机添加到多维数据集时,会将其设为child
个对象。子项的坐标相对于其父是local coordinates
(与缩放和旋转一样),因此当父项(多维数据集)移动时它们不会更改。
您想知道的是相机的world coordinates
。没有直接的属性,因为Three.js只存储完整的世界矩阵,但 提供了一个很好的辅助函数来从该矩阵中提取它:
var cameraPosition = new THREE.Vector3();
cameraPosition.setFromMatrixPosition(Camera.matrixWorld);