我能够使用一个光线投射方法获取当前鼠标下的对象(本例中是一架飞机),但我想要获得鼠标位置在飞机内准确的X和Y坐标。
var vector = new THREE.Vector3( ( event.clientX / window.innerWidth ) * 2 - 1, - ( event.clientY / window.innerHeight ) * 2 + 1,
0.5 );
projector.unprojectVector( vector, camera );
var raycaster = new THREE.Raycaster( camera.position, vector.sub( camera.position ).normalize() );
var intersects = raycaster.intersectObject(plane, true);
if (intersects.length > 0) {
console.log(intersects[0].point);
}
如果我的200x200平面正对着摄像头,那么
intersects[0].point.x
的范围应该是从-100到+100。但是当我旋转平面时,结果就会参差不齐。我怎样才能获得一个在场景中无论平面在哪里都是-100到+100的x值?