1

我正在尝试对 PLY 格式的斯坦福兔子模型进行光线追踪。我有一个解析器,它解析 PLY 文件并给我三角形的坐标值及其顶点。现在我很困惑如何继续前进。我应该把这些三角形顶点放在一个向量中,然后传递它们来构建一个 kd 树吗?还有人有教程或示例源代码,其中将 ply 模型传递给 kd 树,然后遍历 kd 树以对场景进行光线跟踪?如果有人有可以分享的示例代码,请告诉我。谢谢。

4

1 回答 1

3

PLY 是一种文件格式,用于描述为多边形集合的对象。KD 树是一种优化结构,旨在通过消除不必要的交叉测试来加快渲染时间。

所以你需要:

  1. 定义您自己的数据结构,将对象表示为点集合和多边形集合(指点)。
  2. 编写一个加载器,它使用解析器读取 PLY 格式的对象,并构造一个多边形类型的实例。
  3. 定义一个 KD Tree 数据结构。
  4. 编写一个 KD 树构建器,它遍历构成您的对象的多边形并构造一个 KD 树。
  5. 扩展您的光线追踪器以使用 KD 树。

使用 google 查找 KD 树的更多信息和示例代码。标准论文由 Vlastimil Havran 撰写,可在线获取。

于 2011-10-07T08:05:02.877 回答