我试图检测鼠标悬停在我的粒子系统中的某个粒子上。我在做检测是这样的,并且每一帧上运行:如何检测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