【问题标题】:Raycasting to faces using Three.js使用 Three.js 将光线投射到面部
【发布时间】:2017-12-06 23:11:18
【问题描述】:

通过使用八叉树,我得到了一个靠近对象的面数组。我怎样才能对他们进行射线投射。我只能找到如何将光线投射到网格、线或点?

【问题讨论】:

  • 你在问如何使用八叉树吗?光线和面之间的相交测试是另一回事。
  • 我已经让八叉树工作了。我想知道的是,我是否可以单独将 Ray 投射到面部,存储在一个数组中,或者我是否必须用它们创建一个网格。
  • 我认为你需要改进这个问题。你都尝试了些什么。据我所知,three.js 提供了类和函数来测试三角形和射线的交集。
  • 我想你只是回答了这个问题。我可能可以使用 Ray 和 intersectTriangle :)

标签: javascript three.js collision-detection raycasting


【解决方案1】:

如果您使用的是threeoctree,请执行以下操作:

// get the faces using octree search
var octreeObjects = this.octree.search( raycaster.ray.origin, raycaster.ray.far, true, raycaster.ray.direction );
// find the intersections only with the faces you found
var intersections = raycaster.intersectOctreeObjects( octreeObjects );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    • 2014-07-24
    • 2021-07-05
    • 2014-03-01
    相关资源
    最近更新 更多