我已经在那里问过这个问题: https ://github.com/mrdoob/three.js/issues/2070#issuecomment-6372113 但我现在并没有真正明白。
这又是我的问题:我正在使用这个函数来计算我的 Vector3 的屏幕位置(x,y)。
this.toScreenXY = function(position, camera, canvas)
{
var pos3D = position.clone();
var pos2D = projector.projectVector( pos3D, camera );
return {
x : ((pos2D.x + 1) * canvas.domElement.width / 2 + canvas.domElement.offsetLeft),
y : ((-pos2D.y + 1) * canvas.domElement.height / 2 + canvas.domElement.offsetTop)
};
};
但是当我得到正确的屏幕位置时,将相机转动 180 度(关于 y 轴),即使真正的 Vector3 在相机视图后面,我也会得到相同的 x,y 值。知道如何检查 Vector3 是否在相机视图中吗?谢谢您的帮助!