在three.js示例目錄中有很多這樣的例子。例如,http://mrdoob.github.com/three.js/examples/canvas_interactive_cubes.html。
模式你想谷歌是這樣的:
var vector = new THREE.Vector3((event.clientX/window.innerWidth) * 2 - 1, - (event.clientY/window.innerHeight) * 2 + 1, 0.5);
projector.unprojectVector(vector, camera);
var ray = new THREE.Ray(camera.position, vector.subSelf(camera.position).normalize());
var intersects = ray.intersectObjects(objects);
if (intersects.length > 0) {
console.log(intersects[ 0 ].point);
}
如果畫布是完整的瀏覽器這將工作。另外,objects
是一個數組。
three.js r.53
您是否曾經找到過解決方案?我目前正在尋找完全一樣的東西。 – gibo