【发布时间】:2020-07-25 16:32:06
【问题描述】:
我正在编写一个程序,其中会生成一个大而复杂的网格。起初我生成了大量较小的网格,效果很好,但后来我决定将它们合并在一起,一些三角形被破坏了。 经过一番查找,我设法查明了问题:
Debug.Log(fullTriangles == fullTriangles);
boxMesh.triangles = fullTriangles;
Debug.Log(boxMesh.triangles == fullTriangles);
这只发生在我使用大网格时。对于许多较小的网格,两个调试都返回 true。
这是网格的图片。它在很多地方都在自己循环,绝不是凸面的,有几个浮岛,而且从渲染的角度来看通常非常困难。
其他可能重要的信息:
- 大网格中的许多小网格不共享大网格中的任何顶点,但有些顶点的位置相同
- 每个小网格都由一个或多个共享顶点的三角形组成
- 小网格不是子网格
为什么会发生这种情况,我可以做些什么来解决它?
【问题讨论】:
标签: c# unity3d mesh procedural-generation