#bvh #ray-tracing #morton #gamedev #morton-code

已删除 extended_morton_coder

计算扩展Morton码

1 个不稳定发布

0.1.0 2023年5月23日

#10#morton

MIT/Apache

20KB
376

扩展Morton码计算器

一个用于计算扩展Morton码的Rust库(见摘要)。它不仅使用质心的XYZ坐标,还使用对角线的长度来分割不同大小的原始形状。它还具有自适应轴序,以便在倾斜维度中使用更多位。

使用大小位的理由 - 如果您可以将大型原始形状与较小的原始形状分开,您可以在BVH中保持它们在一起,远离其他原始形状。这意味着大型原始形状的大型AABB不会“感染”小型原始形状,这样您就可以通过较少的AABB测试来忽略大量小型原始形状。

使用自适应轴序的理由 - 如果您的场景是倾斜的,比如在X和Y维度上比Z维度长4倍,您可以为代码的X和Y部分分配更多位,从而提高追踪性能。

注意

仍在开发中。请查看问题以了解各种错误。这个crate已基本完成(尽管仍然欢迎PR来修复这些问题!)

依赖项

~3MB
~89K SLoC