Unity优化翻译官方文档(六) ------ CPU Usage Profiler
官网地址 : https://docs.unity3d.com/Manual/ProfilerCPU.html
CPU使用分析器显示在您的游戏中花费的时间。当它被选中时,下窗格将显示所选帧的分层时间数据
1.选择个别item
选择了Render.OpaqueGeometry,它的贡献在图表中突出显示
在层次化的时间数据中,Self列指的是在一个特定的函数中花费的时间,而不包括调用子函数的时间。在上面的截图中,41.1%的时间花在了 Camera.Render
功能。这个函数做了很多工作,并调用了各种绘图和筛选函数。除去所有这些功能,只有2.1%(0.4% / 1.9%)的时间花在 Camera.Render
函数本身。
ms和Self ms的列显示相同的信息,但以毫秒为间隔。Camera.Render需要0.01 ms,但是,包括它所调用的所有函数,0.21 ms被消耗。GC Alloc列展示了在当前帧中分配了多少内存,这是由垃圾收集器收集的。保持这个值为0,以防止垃圾收集器在您的framerate中引起打嗝。
CPU profiler的其他部分记录了所有不属于呈现、脚本、物理、垃圾收集或VSync的区域的总数。这包括动画、人工智能、音频、粒子、网络、加载和PlayerLoop。
2.物理标记(Physics markers)
下面的描述提供了一个简短的描述,说明了各种高级物理分析器标记的含义。
-
Physics.Simulate: Called from
FixedUpdate
.这将通过指导物理引擎来更新物理的现状(PhysX)运行它的模拟 . - Physics.Processing:从FixedUpdate调用。这是所有非布物理作业都被处理的地方。扩展这个标记显示了在物理引擎内部完成的工作的底层细节。
- Physics.ProcessingCloth: 从FixedUpdate调用。这就是所有的布物理作业都被处理的地方。扩展这个标记将显示在物理引擎内部完成的工作的低级别细节。
- Physics.FetchResults: 从FixedUpdate调用。这就是从物理引擎中收集物理模拟的结果。
- Physics.UpdateBodies: 从FixedUpdate调用。这是所有物理体都有自己的位置和旋转的地方,也就是发送这些更新的消息被发送的地方。
-
Physics.ProcessReports从FixedUpdate调用。这个阶段是在物理FixedUpdate结束后运行的,并且是处理模拟结果的所有不同阶段的处理。联系人、联合中断和触发器都在这里更新和发送。有四个不同的分阶段:
-
Physics.TriggerEnterExits: Called from
FixedUpdate
. This is whereOnTriggerEnter
andOnTriggerExit
events are processed. -
Physics.TriggerStays: Called from
FixedUpdate
. This is whereOnTriggerStay
events are processed. -
Physics.Contacts: Called from
FixedUpdate
. This is whereOnCollisionEnter
,OnCollisionExit
andOnCollisionStay
events are processed. -
Physics.JointBreaks: Called from
FixedUpdate
.这是处理与关节断开有关的更新和消息。
-
Physics.TriggerEnterExits: Called from
-
Physics.UpdateCloth: Called from
Update
. 这是关于布和他们的皮肤网格的更新。 -
Physics.Interpolation: Called from
Update
.这个阶段处理所有物理对象的位置和旋转的插值。
3.High Detail view of Timeline(2017中没见到)
对于CPU使用率分析器时间线的高细节视图,在Unity的CPU使用Profiler记录的每次采样中,至少提供了一个像素的宽度。
这允许您查看框架中所有活动的完整概述,包括诸如线程同步或内存分配等短期活动。
要启用高细节视图,请转到窗口剖析器打开剖析器窗口。选择CPU Usage Profiler(如果它是不可见的,请单击Add Profiler),然后选择分析器下面的下拉菜单,然后单击时间轴,然后是高细节。
Comparison
下面的两个图像显示了高细节视图和CPU使用分析器的时间线的正常视图之间的区别。
High Detail view
Normal view