检查AABB空间中是否存在光线。

时间:2018-03-10 23:28:51

标签: algorithm geometry game-engine aabb

我有一个带有3d轴对齐边界框列表的3d空间。我们将这些边界框中的一个称为target。除了所有这些边界框之外,我还有一个位置向量,称之为start

我想确定光线是否存在:

  • start
  • 开始
  • 相交target
  • 在与target 交叉之前,不与任何其他边界框相交

以下是我已经尝试过的方法:

  1. 测试从starttarget的所有顶点的光线。这不起作用,因为其他边界框可能会阻挡所有顶点,但中间有一个空格。
  2. 测试来自start的光线穿过附近边界框的顶点,并查看它们中的任何一个是否与target相交。对于目标被AABB阻挡的情况,这也不起作用,其中所有角都会导致光线偏离目标。
  3. 是否有一种可以找到上述光线的算法?我实际上并不需要找到实际的光线,只是确定它是否存在。

0 个答案:

没有答案