#
luxiaotao1123
2022-03-21 4f7e5d3dc070ea46f4ca243bcbae9eda76d8c8a0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function ObjectSelect(_scene, _camera,outlinePass) {
    var raycaster = new THREE.Raycaster();
    var mouse = new THREE.Vector2();
    let selectedObjects = [];
 
    window.addEventListener( 'click', onMouseClick);
 
    function onMouseClick(event) {
        let x, y;
        if (event.changedTouches) {
            x = event.changedTouches[0].pageX;
            y = event.changedTouches[0].pageY;
        } else {
            x = event.clientX;
            y = event.clientY;
        }
        mouse.x = (x/ window.innerWidth) * 2 - 1;
        mouse.y = -(y/ window.innerHeight) * 2 + 1;
        raycaster.setFromCamera(mouse, _camera);
        var intersects = raycaster.intersectObjects([_scene], true);
 
 
        if (intersects.length === 0) {
            return;
        }
        selectedObjects = [];
        selectedObjects.push(intersects[0].object);
        outlinePass.selectedObjects = selectedObjects;
    }
 
}