Möller-Trumbore射线交叉最快吗?

问题描述 投票:6回答:2

对于光线跟踪器项目,我一直在研究处理找到光线和三角形之间交叉的算法(由三个顶点定义)。到目前为止我发现的是Möller-Trumbore(MT)算法被普遍使用。

所以我的问题是1)是否有MT的替代方案或算法被认为是计算交叉点的最快方法? 2)如果是,MT被证明是最优的还是有人可以想象发明更快的算法?

编辑:我现在看到我的问题与Ray-triangle intersection非常相似

algorithm linear-algebra intersection raytracing
2个回答
5
投票

作者声称,2016年有一篇论文

在理想的实验条件下运行,我们的算法总是比标准的Möller和Trumbore算法更快,并且比高度调整的现代版本更快,除了非常高的射线三角形命中率。

资料来源:Doug Baldwin和Michael Weber,“坐标转换快速三角交叉点”,“计算机图形技术期刊”(JCGT),第一卷。 5,不。 2016年3月39日至39日

可在线获取http://jcgt.org/published/0005/03/03/


4
投票

谨慎对待Weber算法。虽然它可能更快,但我看到很多交叉点错误地被识别为不相交。该文件指出:

如果t太小或太大而无法表示有效交叉点,或者如果b1超出允许交叉点的范围,则此系列计算可以提前终止。

我已经看到大约2-3%的网格早期失败,因为't'太小了。我还在排除故障,但看起来P的倒数导致我的旋转方向向量太大,等于小't'。

另一方面,如果未正确设置epsilon,您还可以使用MT算法获得错误的交叉点。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.