我试图创建一个三点可点击的形状从点击鼠标产生的一堆点。从点生成网格Three.js
此代码是一种工作的:得到补充
mouse.x = ((event.clientX - renderer.domElement.offsetLeft)/player.width) * 2 - 1;
mouse.y = - ((event.clientY - renderer.domElement.offsetTop)/player.height) * 2 + 1
raycaster.setFromCamera(mouse, camera);
var objects = [];
objects.push(selectedHotspot);
var intersects = raycaster.intersectObjects(objects, true );
if (intersects.length > 0) {
var point = new THREE.Mesh(new THREE.SphereGeometry(1, 1, 1), new THREE.MeshBasicMaterial({ color: 0x00ffff }));
point.position.copy(intersects[0].point);
scene.add(point);
points.push(intersects[0].point);
}
var geometry = new THREE.Geometry();
points.forEach(function(point){
geometry.vertices.push(point);
});
geometry.vertices.push(points[0]);
geometry.faces.push(new THREE.Face3(0, 1, 2));
// material
var material = new THREE.MeshBasicMaterial({ color: 0xffffff });
// line
var line = new THREE.Mesh(geometry, material);
scene.add(line);
hotspots.push(line);
的点,我可以得出他们之间的线路我只是无法在该中心填补这样的鼠标可以检测到它!
伟大的这是完美的谢谢。 – user5839