我想旋转然后用THREE.PlaneGeometry创建的平面,但是我有一些问题。
FirstPersonCamera在相机前面的轴是什么?
我自己的测试显示X前后/ Y上下/ Z左/右,对吗?
为了使用这些平面制作一个立方体,我使用以下代码(仅用于显示X轴面的切割)。由于我不明白的原因,块和正交基之间的空间很小。似乎在平移后应用了旋转。我该如何解决?
function lol() {
var mesh = new THREE.Mesh(xFacesGeometry, material);
mesh.matrix.setRotationFromEuler(new THREE.Vector3(0, ath.PI / 2), 'XYZ');
mesh.matrix.setPosition(new THREE.Vector3(x * 20 + 10, y * 20 + 10, z * 20 + 10));
mesh.matrixAutoUpdate = false;
}
lol(0, 0, 0);
lol(1, 0, 0);
完整代码在这里(使用Ctrl +单击可向后移动):http://jsfiddle.net/u8ZHC/
最佳答案
尝试在转换位置之前更新矩阵:
mesh.matrix.setRotationFromEuler(new THREE.Vector3(0, Math.PI / 2), 'XYZ');
mesh.updateMatrix();
mesh.translate(...);
关于3d - 旋转,然后翻译成three.js,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7541412/