帧率越低,一帧渲染时间就越长,表现起来就越缓慢,卡顿,但是渲染次数降低,设备的发热量就会越小。相反帧率越高,一帧渲染时间就会越短,表现起来就会越流畅,但是渲染次数增大,设备的发热量就相对越大,所以一般游戏帧率控制在30帧,也就是每隔33毫秒渲染一次,流畅度和发热量相对都是最优。cpu usage profiler性能分析工具就是告诉我们每一帧各个任务调度耗费的时间,找出耗时任务并予以解决,达到在目标帧率对应的的时间周期内完成一帧的绘制操作,保持帧率的稳定。
Profiler界面操作:
1.cpu usage profile主要包含了渲染,脚本,物理引擎操作,垃圾回收,垂直同步,gi以及其他操作,每一个模块都用特定的颜色表示,并在profiler视图中显示出来。
2.profiler视图中按照每一帧进行显示时间消耗数据信息,选择某一帧时就会显示当前选择帧的各个统计模块的时间消耗,而当前帧的总消耗时间就是在该视图底部进行统计显示。
层级视图操作:
1.该视图就是用来查看当前选中帧各个任务模块的具体时间消耗,我们可以从中更加深入的分析并解决时间消耗久的任务。
2.视图中操作面板简介:
Total ms:当前任务在当前帧内的耗时总时间。
Self ms:当前任务自身(不包含内部的子任务)时间消耗。
Total:当前任务的时间消耗占当前帧cpu消耗的时间比例。
Self:任务自己时间消耗占当前帧cpu消耗的时间比例。
Call:当前任务在当前帧内被调用的次数。
GC Alloc:当前任务在当前帧内进行过内存回收和分配的次数。
Waring:当前任务用到可能造成性能问题的操作调用次数,一般而言该操作会造成性能问题,但并不一定会出现,所以一般慎用Waring对应的操作。
3.选中视图中的一个任务就会在profiler视图中高亮该任务的绘制信息,再次选中就会取消高亮。
4.垂直同步(VSync)会同步游戏帧率以及屏幕的刷新率,会对任务耗时分析造成影响,所以我们最好关闭垂直同步功能,关闭方式如下图所以:
1.点击垂直同步小方框进行取消绘制
2.在project setting->quality->v sync count->don’t sync进行取消绘制
时间线视图操作:
1.该视图主要是cpu执行哪些任务以及任务被哪些线程执行,线程分为三种:主线程,渲染线程和工人线程,知道每个线程的执行时间就可以对耗时久的线程上面的任务进行优化处理。
参考网址:
1.https://docs.unity3d.com/540/Documentation/Manual/ProfilerCPU.html
2.http://www.cnblogs.com/alan777/p/6135703.html