javascript - Threejs 获取物体附近的光线转换器交点

标签 javascript jquery three.js

我正在尝试获取鼠标“附近”的对象,我正在使用以下内容:

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 属性,只让对象位于鼠标下方。

最佳答案

nearfar 属性指示沿射线的距离,而不是距射线的距离。因此,在您的情况下,光线转换器将匹配距离相机 10 到 100 个单位的物体,而不是光线周围的半径。

据我所知,您正在寻找的公差值在 raycaster 中不可用。不过,您可以做的是仅为光线转换创建一个单独的场景。对于每个需要光线转换的对象,您将创建另一个对象(按某种因素放大)并将其添加到光线转换场景中。

关于javascript - Threejs 获取物体附近的光线转换器交点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40335056/

相关文章:

javascript 行为 - 函数表达式与函数声明 - 区别

javascript - 如何让 Three.js 相机看到物体的脸部?

javascript - firefox 插件 main.js 显示相同的请求响应,而不是更新

javascript - 使用 HTML5 的性能和 performance.timing 对象测量 JS 性能

javascript - 从 Javascript 函数返回一个变量

javascript - 我如何为从数组创建的 <button> 提供它们自己的单独 id?

javascript - 三个JS将3D尺寸转换为2D

javascript - Three.js - 在 3D 球体周围应用纹理(2D png 图像)显示为黑色

javascript - GmailApp、getDate 和排序

javascript - 比较 javascript 日期