Ray voxel intersection

时间:2011-03-19 21:27:42

标签: c# math voxel

我想测试光线与体素场的交叉点。

我可以通过计算与当前体素边缘的光线盒交点来天真地爬过体素场,然后对下一个体素做同样的操作,直到我碰到某个东西。但是没有更快的方法来追踪体素场吗?我正在思考3D Bresenham's line algorithm中的某些东西,这可以很快地给出给定线相交的所有单元格。有人这么做过吗?

由于certian限制以及这些光线跟踪经常不发生的事实,我不想构建八叉树或任何其他数据结构。

2 个答案:

答案 0 :(得分:3)

Here's Bresenham的3D实现。它在matlab中;如果你不说话,你可以看到C implementation here

答案 1 :(得分:-1)

我相信八叉树算法能满足您的要求。