点、面过多 ----> 点、面过多,GPU 根据不同面的效果展开计算,并且CPU计算的数据也多,所以效果出来了,由于Saved by batching和Drawcal值过大所引起的卡的问题
优化方式有:
1. 对于模型 :Mesh 合并,有个不错的插件(DrawCallMinimizer ---> 直接上AssetStore 下载即可,免费的,而且有文档,很容易上手)
2. 对于UI : 尽量避免使用Unity3D自带的 GUI 换用 NGUI或者EZGUI;因为这两个UI插件对于UI中的图片处理是将UI图片放置在一个 Atlas中,一个 Atlas 对应一个Drawcall
3. 对于灯光: 可以使用 Unity3D 自带的 Lightmapping插件来烘焙场景中的灯光效果到物体材质上
4. 对于场景: 可以使用 Unity3D 自带的 OcclusionCulling 插件把静止不动的场景元素烘焙出来
对于特效:尽量把材质纹理合并
模型上的优化:
1,压缩 Mesh,导入 3D 模型之后,在不影响显示效果的前提下,最好打开 Mesh Compression。Off, Low, Medium, High 这几个选项,可酌情选取。
2,避免大量使用 Unity 自带的 Sphere 等内建 Mesh,Unity 内建的 Mesh,多边形的数量比较大,如果物体不要求特别圆滑,可导入其他的简单3D模型代替。
2优化建议
2.1渲染
1.不使用或少使用动态光照,使用light mapping和light probes(光照探头)