将两个网格合并为一个

Joining two meshes into one

假设我有两个以任何合理格式存储的网格(例如 wavefront .obj 或 collada .dae),我想以编程方式将它们组合成一个网格。更准确地说,我有一个景观和一个物体作为两个网格。我想在对它执行转换后将对象放入景观中,以便它到达正确的位置,并将其导出为结果模型。

据我了解,在assimp中有一个类似的名字SceneCombiner,但似乎这是内部结构并且没有接口(即使在这里https://github.com/assimp/assimp/issues/584 相关工单已关闭,我一直没找到怎么使用)。

也许我应该使用 CGAL 或类似的东西?我在 CG 库方面没有太多经验,所以任何建议都会非常有用!

您可以使用 CGAL 做到这一点。您将读取两个网格并调用 copy_face_graph(),然后将网格写回。