Unity游戏优化(1)——学习UnityProfiler

来自书籍《Unity游戏优化》一共分为9章。

第一章    探索UnityProfiler

1、如何使用UnityProfiler收集分析数据?

2、如何分析Profiler数据找到性能瓶颈?

打开性能分析面板Profiler快捷键Ctrl+7

Profiler窗口分四个部分

Profiler控件 

时间轴视图 

Frame Counter显示已经分析了多少帧以及在当前时间轴视图中选中了哪一帧。

右边是分析数据的图形化展示,左边是一系列用于启用/禁用不同行为/数据类型的复选框。


CPU使用区域

三种模式:

Hierarchy模式 :Hierarchy模式有助于作为第一步,来决定执行哪个函数调用会花费最多的CPU时间。

Raw Hierarchy模式 :如果尝试统计某个全局方法调用了多少次,或者确认这些调用中的某次调用比预计消耗了更多的GPU和内存,Raw Hierarchy模式会很有用。

Timeline模式:对于CPU使用情况区域最有用的模式可能是Timeline选项

Timeline模式将细分视图垂直组织到不同的部分,代表运行时的不同线程,例如主线程、渲染线程和各种后台工作线程,称为Unity Job System,用于加载诸如场景和其他资源等活动。水平轴表示时间,所以宽方块消耗的CPU时间比窄方块更多,方块的水平大小也表示相对时间,更容易比较两个调用所消耗的时间。垂直轴代表调用栈,因此更深的链表示在那个栈上有更多调用。

GPU使用情况区域

“GPU使用情况”区域和“CPU使用情况”区域类似,但前者展示的是发生在GPU上的方法调用和处理时间。这个区域中的相关Unity方法调用与摄像机、绘制、不透明的和透明的几何图形、光照和阴影等有关。
细分视图提供了有用的信息,诸如SetPass调用的数量(也称为Draw Call)、渲染到场景的批次总数、通过动态批处理和静态批处理节省的批次数量和它们的生成方式,以及纹理的内存消耗。

有两种模式

Simple模式 

Simple模式只提供子系统内存消耗的高层次概览。包括Unity底层引擎、Mono框架(由垃圾回收管理的整个堆的大小)、图形资源、音频资源、缓冲区,甚至用于保存Profiler收集的数据的内存。

Detailed模式

Detailed模式显示每个GameObjects和MonoBehaviours为其Native和Managed表示所消耗的内存。它还有一列,解释为什么对象可能消耗内存以及它可能何时被销毁。

注意,单击Take Sample: < TargetName >按钮,信息仅在Detailed模式下通过手动采样来显示。

音频区域

可以用于估量音频系统的CPU消耗,以及(所有播放中或暂停的)音源和音频剪辑的总内存消耗。

Physics和Physics 2D区域

有两个不同的“物理”区域,一个是“3D物理”(Nvidia的PhysX),另一个是“2D物理”系统(Box2D)。这个区域提供不同的物理统计数据,例如Rigidbody、Collider和Contact计数。

网络消息和网络操作区域

视频区域

UI和UI详情区域

全局光照区域

Global Illumination(GI简称)

细分视图控件栏 

细分视图

验证脚本是否出现过

为了快速验证脚本是否存在,可以在Hierarchy窗口的文本框中输入以下内容:t:<monobehaviour name>    name为脚本名 还要注意脚本所在物体是否激活

 

处理后期初始化的一个更好的地方是MonoBehaviour组件的Start()回调,它总是在每个对象的Awake()之后,第一个Update()之前调用。后期更新也可以在LateUpdate()回调中完成。

大多数游戏希望以30FPS或60FPS的速度运行,这意味着它们分别只有33毫秒或16毫秒来计算整个帧的所有内容。因此,假设只需要将特定代码块的运行时间降低到10毫秒以下,那么为了获得微秒精度而重复数千次测试就太不值得了。

string.Format()。简短的解释是,使用此方法是因为使用+操作符(例如,Debug.Log("Test: " + output);等代码)生成自定义string对象会导致惊人的内存分配量,令系统进行垃圾回收。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值