Unity3D客户端项目优化总结之Profiler分析器概述

上一篇谈到了Stats统计面板中的一些参数代表的是什么,但是Stats面板只提供了一个大概的信息展示,程序运行的详细情况还得看我们今天的主角Profiler分析器,借助Profiler我们可以一帧一帧的分析程序的性能消耗。接下来我们看看,Profiler分析器该怎么使用。

1. Profiler面板

Unity3D中,Ctrl+7快捷键或者菜单栏Windows->Profiler可进入Profiler面板。
Profiler面板的基本区域如下。
Profiler面板分块

1.1 Profiler菜单栏

常用的几个按钮如下:

  • AddProfiler 用来添加需要观察的某项具体的Profiler(下拉列表中黑色项是目前面板没有的项)
    AddProfiler按钮的作用
  • Record 记录,按下(白色)表示选中即实时采集每帧程序的信息,没选中表示不采集
  • Deep Profile 深度分析,选中后需要重新运行程序,这个选项可以具体分析到某个脚本中的某个方法(普通的Profile不行)
  • Clear 清除当前页面中数据
  • Frame 当前帧数/程序运行到现在的总帧数
  • 左右箭头 可以微调选中的某一帧
    其他按钮的作用

1.2 分类数据统计

分类数据统计

2 Profiler下的13个子分析器

2.1 子分析器分类

这13个子分析器可大致分为6个大类。
三大硬件分析器
CPU Usage(中央处理器使用率), GPU Usage(图形处理器使用率),Memory(内存), 这三个分析器是用来分析当前项目对 CPU, 显卡, 内存条这三个硬件的使用情况。
三大硬件分析器
灯光与渲染分析器
Rendering(渲染) 和 Global Illumination(全局光照), 这两个分析器可以说是把显卡的使用情况(GPU Usage)又细分成了两个更针对性的分析器。
灯光与渲染分析器
两个流媒体资源分析器
Audio(音频) 和 Video(视频) , 这两个分析器用于分析音频和视频的性能消耗。
流媒体分析器
视频在Unity3D中用得不多,一般在启动页面或者过场动画时使用,优化的地方也只有压缩视频,Video分析器没啥用。
两个物理分析器
Physics(物理引擎) 和 Physics(2D)(物理引擎(2D)) , 这两个分析器用于分析所有物理相关组件的消耗。 物理组件有 3D 和 2D 之分, 所以有两个物理分析器。
两个物理分析器
两个网络分析器
Network Messages(网络消息) 和 Network Operations(网络运营) ,这两个是针对客户端与服务器之间数据交互检测的, 这里不做讲解。
两个网络分析器
两个UI分析器
UI(用户界面) 和 UI Details(用户界面细节) , 这两个分析器用于 UI 界面。
两个UI分析器

2.2 常用分析器

虽然说一共有 13 个子分析器, 但是有一些分析器我们目前使用不到, 或者使用频率很低, 我们就可以将它们在 Profiler 面板上移除。
需要移除的分析器(5 个) :
GPU Usage, Video, Physics(2D) , Network Messages,Network Operations。
为什么这几个用不到?因为GPU Usage可以由Rendering(渲染)和Global Illumination(全局光照)组成;Video优化只能压缩视频,没多大意义;Physices(2D)这里的教程我们不会涉及到2D的碰撞器;剩下两个网络分析器,教程不讲解。
需要保留的分析器(8 个) :
CPU Usage, Memory, Rendering, UI, UI Details, Physics, Audio,Global Illumination
[优化一个项目的切入点是内存, 渲染, 灯光这三个 Profiler,
因为对性能消耗最大的光照, 阴影, 模型网格, 模型贴图等资源的监测都在这三个 Profiler 中。]

接下来会具体谈谈各个子分析器怎么看,等不及的同学去看猴哥的课程吧顺带安利一波小站,嘿嘿。

2.3 各分析器具体使用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章