【发布时间】:2011-07-18 21:53:25
【问题描述】:
我想测试射线与体素场的交集。
我可以通过计算与当前体素边缘的光线盒交点来天真地爬过体素场,然后对下一个体素做同样的事情,直到我碰到什么东西。但是没有更快的方法来追踪体素场吗?我在想一些类似于Bresenham's line algorithm 在 3D 中的东西,它可以很快给我所有与给定线相交的单元格。以前有人做过吗?
由于某些限制以及这些光线追踪不经常发生的事实,我不想构建八叉树或任何其他数据结构。
【问题讨论】:
我想测试射线与体素场的交集。
我可以通过计算与当前体素边缘的光线盒交点来天真地爬过体素场,然后对下一个体素做同样的事情,直到我碰到什么东西。但是没有更快的方法来追踪体素场吗?我在想一些类似于Bresenham's line algorithm 在 3D 中的东西,它可以很快给我所有与给定线相交的单元格。以前有人做过吗?
由于某些限制以及这些光线追踪不经常发生的事实,我不想构建八叉树或任何其他数据结构。
【问题讨论】:
Here's Bresenham 的 3D 实现。它在matlab中;如果你不说你可以看到一个C implementation here。
【讨论】:
我相信八叉树算法可以满足您的要求。
【讨论】: