unity5Batches一万四怎么降低

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

以下内容借鉴于冯乐乐同学的

对于批处理,提交大量很小的Draw Call会造成CPU的性能瓶颈即CPU紦时间都话费在准备Draw Call的工作上了。那么一个很显然的优化想法就是把很多小的Draw Call 合并成一个大的Draw Call,这就是批处理(Batching)的思想

在游戏中我們需要注意两点:

1,避免使用大量很小的网格当不可避免地需要使用很小的网格结果时,考虑是否可以合并它们

2,避免使用过多的材質尽量在不同的网格之间共用同一个材质。

看到很多开发者习惯性的会打开Game視窗的Stats去查看渲染统计的信息

但只会看一下Draw Calls数值,其他的信息也并没有什么体会;

其实里面的每一项都很重要并值得学习和了解。

fps其實就是 frames per second,也就是每一秒游戏执行的帧数这个数值越小,说明游戏越卡

batching之后渲染mesh的数量,和当前渲染到的网格的材质球数量有关

渲染的批处理数量,这是引擎将多个对象的绘制进行合并从而减少CPU的开销;

很多GUI插件的一个好处就是合并多个对象的渲染从而降低DrawCalls ,保证游戏帧數

4、Tris 当前绘制的三角面数

5、Verts 当前绘制的顶点数

6、Used Textures 当前帧用于渲染的图片占用内存大小

7、Render Textures 渲染的图片占用内存大小,也就是当然渲染的物體的材质上的纹理总内存占用

8、VRAM usage 显存的使用情况VRAM总大小取决于你的显卡的显存

9、VBO Total 渲染过程中上载到图形卡的网格的数量,这里注意一点僦是缩放的物体可能需要额外的开销

好了,游戏开发中优化非常关键和必要快快积累经验,不断前进!!


结合网格有利于性能最优化如果mergeSubMeshes为true,所有的网格会被结合成一个单个子网格否则每一个网格都将变成单个不同的子网格。如果所有的网格共享同一种材质设定它为嫃。如果useMatrices为false在CombineInstance结构中的变换矩阵将被忽略。

我要回帖

更多关于 unity 的文章

 

随机推荐