屏幕坐标转three.js坐标
将屏幕坐标转变成threejs空间坐标:
function transToThreeCoord(x,y){
let mouse = new THREE.Vector3();
mouse.x = (x/window.innerWidth)*2 -1;
mouse.y = -(y/window.innerHeight)*2 + 1;
return mouse;
}
注意:在实际使用中,画布的宽高度并不一定是window.innerWidth或window.innerHeight,要根据画布实际的宽高度进行替换
推导过程如下: