我試圖檢測鼠標懸停在我的粒子系統中的某個粒子上。我在做檢測是這樣的,並且每一幀上運行:如何檢測three.js中的粒子系統中的粒子懸停?
function check_intersections() {
var vect = new THREE.Vector3(
mouse.x,
mouse.y,
0.5
);
projectr.unprojectVector(vect, camera);
var raycaster = new THREE.Ray(camera.position, vect.subSelf(camera.position).normalize());
var intersects = raycaster.intersectObjects(particleSystem);
if (intersects.length > 0) {
//intersects[ 0 ].object.materials[ 0 ].color.setHex(Math.random() * 0xffffff);
noticeDiv.text('Intersection');
}
}`
var這個粒子系統是我的粒子系統與數千顆粒物質,每當它的動作如鼠標的定義:
function onDocumentMouseMove(event) {
// update the mouse variable
mouse.x = (event.clientX/window.innerWidth) * 2 - 1;
mouse.y = - (event.clientY/window.innerHeight) * 2 + 1;
}
我看了幾個例子,但似乎無法得到這一個權利。
您應該接受下面的正確答案。 – buley