Skip to main content
 首页 » 编程设计

c#之如何在 iOS 上的 unity3d 中生成(挤压)网格时提高性能

2024年01月01日49over140

我打算制作一个类似于 AudioSurf 的游戏对于 iOS,并在其中实现“生成特定参数的路由”。 我使用了 Unity Procedural Example 中的 Extrude Mesh 示例和这个问题的答案 - link 但在 iOS 中,对象的挤出存在相当大的滞后,如果在游戏早期就挤出整条路线 - 需要花费大量时间,并且存在轨迹显示问题,由大量多边形组成。 .. 你能告诉我如何显示生成的路线或生成路线的最佳方法是什么吗?

请您参考如下方法:

您可以通过以下方式极大地提高程序网格生成的性能-
- 您可以编辑网格的顶点和三角形数组,而不是生成新的网格,即使用固定大小的三角形和顶点数组-

创建一个类“RoadMesh”并向其添加功能,例如- UpdateRoadMesh(Vector3 playerPosition) 此函数将根据玩家的当前位置计算并设置道路远端的顶点和三角形的值, 在到达顶点和三角形数组的末尾时更新数组值时,开始使用起始索引,因为玩家可能已经越过这些点。由于没有创建新的网格并且每隔几帧也会编辑一次顶点,因此它将具有巨大的性能..