Three.js旋转矢量和屏幕边缘检测

时间:2016-11-13 04:50:28

标签: javascript matrix three.js

我有一个向量,我试图保持长度,但在与屏幕边缘碰撞时旋转90度,但它给我一个奇怪的效果...不知道我可以做什么穿但是它发生在我尝试应用矩阵和欧拉变换...同样对于屏幕检测,我有什么可以检测开关屏幕,但知道它是底部,顶部,右边还是左边边是很方便的...任何线索?谢谢!

var direction = new THREE.Vector3(-0.2, -0.2, 0);
var a = new THREE.Euler( (Math.PI/2), 0, 0, 'XYZ' );
direction.applyEuler(a);

碰撞;我正在使用以下内容:

camera.updateMatrixWorld(); // make sure the camera matrix is updated
camera.matrixWorldInverse.getInverse( camera.matrixWorld );
cameraViewProjectionMatrix.multiplyMatrices( camera.projectionMatrix, camera.matrixWorldInverse );
frustum.setFromMatrix( cameraViewProjectionMatrix );

console.log(frustum.intersectsObject(textMesh));

1 个答案:

答案 0 :(得分:0)

我删除了线以获得反转的相机投影矩阵。

屏幕边缘有效地变成了一个对象"外面"我的view frustum,我的对象现在可以主动与之碰撞。通过现在是一个消极的视锥,除了我们看到的所有东西都是一个围墙的对象'这限制了截头体本身。

相关问题