【发布时间】:2019-11-23 13:30:29
【问题描述】:
现在我知道网格简化是人们多年来一直在研究的东西,但我真的不需要你可能想的那种简化。我一直在开发一款大量使用程序网格的游戏。我使用的一种算法有一个缺陷,一个很大的缺陷,它在网格中创建了大量的伪像三角形。例如,如果我有一个平面方形平面,并在其上执行此算法,它仍然是一个平面方形平面,但添加了数千到数百万个无用的三角形。 所以我的问题是如何通过折叠无用的三角形来简化网格,我不在乎减少整体多边形数量,只是删除所有平面上且 100% 无用的三角形。 Heres a example picture of the problem, its a flat side of a cube. 这张图片应该很清楚地描述了这个问题。我正在使用 Unity 和 c#。
我进行了大量研究,并且不断听到有关 Edge Collapse 的消息,但我找不到任何关于此案例的具体信息。 Edge 折叠是正确的使用方法吗?如果是这样,我怎么能在这种情况下实施它?所有现有方法都使用它来进行通常的网格简化。
【问题讨论】:
-
能否提供一个最小的代码示例?
-
什么?产生结果的算法?由于合同,我不允许分享它。但我可能会提供一个带有此错误的 3d 模型。结果只是一个正常的破碎 3d 模型,所有表面上都有很多三角形。
-
你在问如何折叠边缘?
-
可能,我不确定折叠边缘是否是我需要的,因为我不是 100% 确定它是什么。
-
另一种说法是,我想简化共享飞机的 tris。