标签:
学习笔记适合新手,如有错误请指正。?号处也请各位指点下,谢谢。
Profiler是Unity中一个辅助优化游戏性能的工具,它在游戏运行时实时详细报告游戏各个部分每帧所耗费的时间
例如:
图像渲染部分、动画系统或者脚本各耗费多少时间
在运行场景或者使用设备运行游戏的时候打开Profiler,它会记录并以时间轴为基础显示数据,让你可以知道哪些帧或者功能部分消耗较多的时间
Profiler会检测代码,这会对性能造成一定影响,一般来说,重点关注的时间消耗最多的那些帧里消耗最多的部分
Profiler界面
点击导航菜单栏》window》Profiler打开Profiler界面,在打开并运行场景
途中黑色部分(即以时间为横轴的性能数据)统称波形图
功能被分为如下5个部分检测:
中央处理器使用率(CPU Usage):主要分析游戏运行时每帧游戏各个部分所消耗的CPU时间,波形图分为7个子项并以不同颜色显示
渲染(Rendering):不在是表示每帧消耗的时间,而是表示渲染的性能指标,波形图分为4个子项并以不同颜色显示
内存(Memory):主要分析游戏运行时每帧游戏各种部分所占用的内存大小,波形图分为7个子项并以不同颜色显示
音频(Audio):主要分析游戏运行时每帧的音频性能指标,波形图分为4个子项并以不同颜色显示
物理(Physics):主要分析游戏运行时每帧的物理性能指标,波形图分为两个子项并以不同颜色显示
功能分析
部分名 | 颜色 | 功能 | 说明 |
中央处理器使用率 | 绿色 | Rendering渲染 | 如场景人物的渲染等 |
蓝色 | Scripts | 游戏对象上所添加的各类对象 | |
橙色 | Physics | 如刚体碰撞器等组件的相关计算 | |
褐色 | GarbageCollector垃圾回收器 | GC的垃圾内存回收 | |
黄色 | Vsync垂直同步 | 强制游戏的刷新率低于屏幕的刷新率, 以免出现不同步的情况(画面撕裂) |
|
红色 | GI全域光照 | 光照计算 | |
紫色 | Others其他 | 其他功能 | |
渲染 | 绿色 | Batches | 动态合并和静态合并的数量 |
蓝色 | SetPassCalls | Shader中调用SetPass的次数 | |
橙色 | Triangles | 三角形的数量 | |
褐色 | Vertices | 顶点的数量 | |
内存 | 绿色 | Total Allocated | 总的内存占用 |
蓝色 | Texture Memory | 贴图内存占用 | |
橙色 | Mesh Memory | 网格模型模型内存占用 | |
褐色 | Material Count | 材质数量 | |
黄色 | Object Count | 游戏对象数量 | |
红色 | Total GC Allocated | GC分配的总内存 | |
紫色 | GC Allocated | GC分配的内存 | |
音频 | 绿色 | Playing Sources | 正在播放的声源的数量 |
蓝色 | Audio Voices | 正在使用的音频数量 | |
橙色 | Total Audio CPU | 音频总的CPU占用百分比 | |
褐色 | Total Audio Memory | 音频内存占用 | |
物理 | 绿色 | Active Rigidbody | 激活状态的刚体 |
蓝色 | Number of Contacts | 接触的数量 |
所有栏中波形图都是最右侧绘制最新的时间占用并向左移动,当选中CPU Usage栏,恶魔人呢可以看在这里看到有16ms(60FPS)、10ms(100FPS)、5ms(200FPS)3条横向基准线,他们代表的意思是当波形刚好位于基准线上的数值
5ms代表的是这一帧的CPU计算占用了5ms的时间,1s等于1000ms,1000除以5等于200,也就是括号中的200FPS即帧的刷新率是200帧/秒
OverView中显示的是脚本各占用了多少时间
将鼠标光标移动到CPU波形图的任意一点并单击鼠标左键,此时出现一条竖线,旁边伴以数据显示该帧的性能情况,如下图
标签:
原文地址:http://www.cnblogs.com/kubll/p/4941508.html