Unity3d 创建Mesh报错 Mesh.vertices is too small

参考链接:https://answers.unity.com/questions/423569/meshvertices-is-too-small.html

公司项目有用到动态创建mesh的地方,如下图:

Unity3d 创建Mesh报错 Mesh.vertices is too small_第1张图片

总共有4层mesh,运行一段时间就会报 Mesh.vertices is too small 的错误,通过参考链接了解到需要作出如下两处改动:

改动一:mesh清空处理(下面文章大体意思就是这个错误是由于,代码不断更新mesh的时候未做清空处理。)

Unity3d 创建Mesh报错 Mesh.vertices is too small_第2张图片

改动二:新建mesh,顶点三角信息信息赋值给mesh完毕后,在将新建的mesh赋值给目标Mesh Filter组件的.mesh变量;

(下文图片内容:另外还提到,一定要在给新建的mesh赋值三角信息之前,赋值顶点信息)Unity3d 创建Mesh报错 Mesh.vertices is too small_第3张图片

这两处改动之后,如下图:我项目中问题不在复现。

Unity3d 创建Mesh报错 Mesh.vertices is too small_第4张图片

对了,由于我这个4层扩散模型是随着时间动态变化的,所以,如果我一直开着的话,时间长了以后,会报一个错,Mesh with more than 65000 Vertices 或者错误 triangles is too large 3528;参考链接 https://answers.unity.com/questions/471639/mesh-with-more-than-65000-vertices.html

所以代码中加上判断如下:

Unity3d 创建Mesh报错 Mesh.vertices is too small_第5张图片

就酱!

It is not the mountain we conquer but ourselves.
我们要征服的不是高山,而是自己。

你可能感兴趣的:(mesh)