我正在尝试获取鼠标附近的物体,我正在使用以下内容:
raycaster.near = 10;
raycaster.far = 100;
var intersects = raycaster.intersectObjects( scene.children );
if ( intersects.length > 0 ) {
if ( INTERSECTED != intersects[ 0 ].object ) {
console.log(intersects);
}
} else {
//Manage mouse out
}
它忽略了near和far属性,只是将对象放在鼠标下方。
答案 0 :(得分:1)
near
和far
属性表示沿光线的距离,而不是距离光线的距离。所以在你的情况下,raycaster将匹配距离相机10到100个单位的物体,而不是光线周围的半径。
据我所知,raycaster中没有像你一样的容差值。但是,您可以做的是仅为光线投射创建单独的场景。对于需要光线投射的每个对象,您将创建另一个对象(按某个因子放大)并将其添加到光线投射场景中。