Ich habe ein Object3D (Position 10, 0, 30) mit einem Kind-Mesh (lokale Position 0, 0, 0) mit BoxGeometry (w: 20, h: 20, d : 20).Kollision für Child-Mesh für Three.js erkennen
Wenn nun ein Strahl mit Ursprung (-10, 0, 0) und Richtung (1, 0, 0) geworfen und auf Schnittpunkt geprüft wird, wurde Schnittpunkt erkannt (falsch, da sich das Objekt nicht im Pfad befindet).
diesen Code vor:
const THREE = require('three');
let obj = new THREE.Object3D();
let boxGeo = new THREE.BoxGeometry(20, 20, 20);
let mat = new THREE.MeshPhongMaterial();
let mesh = new THREE.Mesh(boxGeo, mat);
obj.add(mesh);
obj.position.set(10, 0, 30);
let raycaster = new THREE.Raycaster(new THREE.Vector3(-10, 0, 0), new THREE.Vector3(1, 0, 0));
let intersects = raycaster.intersectObject(obj, true);
Das Array schneidet der Länge 2, während es auf Länge 0.