Version: 6000.3
语言: 中文
文件访问探查器模块参考
检测所有函数调用

播放模式和编辑器配置文件示例

当您分析 Unity 编辑器或播放模式时,Unity 会将其相关时序分组为两个示例组,这些示例组具有以下标记

  • PlayerLoop:与播放模式相关的时序
  • EditorLoop:与编辑器相关的时间

播放模式示例

当您分析播放模式时,分析器帮助您优化游戏的窗口。它显示了在游戏的各个领域花费了多少时间。例如,它可以报告渲染、动画制作或游戏逻辑所花费的时间百分比。更多信息
请参阅术语表
仅收集发生在PlayerLoop.该组有助于减少 CPUGPU Profiler 模块中的误导性测量量。

Unity 将任何EditorLoopsamples 作为 Others 在 CPU Profiler 模块图表中,这意味着EditorLoop样本是其他类别的最大贡献者。如果你想了解编辑器在这段时间里做了什么,并详细了解哪些因素对 其他(Others) 类别有贡献,请分析编辑器进程

重要:如果使用深度分析并以播放模式为目标,则它会对两者中发生的每个调用产生性能影响PlayerLoopEditorLoop.这是因为深度分析在域重新加载时挂钩到任何脚本方法调用的开头和结尾,并且它不会检测哪些部分从未从PlayerLoop.在EditorLoop没有创建样本的全部开销,但它们仍然会检查是否发出一个样本,这会导致较小的开销。

编辑器示例

分析编辑器进程时,之前隐藏在EditorLoop标记为各自的类别做出贡献。这意味着 CPU Profiler 模块的详细信息窗格及其图表中的信息会发生重大变化。

有一定的探查器标记放置在代码中,用于描述 CPU 或 GPU 事件,然后显示在 Unity 探查器窗口中。默认添加到 Unity 代码中,或者您可以使用 ProfilerMarker API 添加自己的自定义标记。更多信息
请参阅术语表
仅当您在 Unity 编辑器中进行分析时才会出现。这些标记不会显示在与玩家相关的活动中,仅与编辑器活动相关。仅限编辑器的标记包括:

  • 安全检查,如 GetComponentNullErrorWrapper,它有助于识别 null 组件使用情况。
  • CheckConsistency,用于验证对象设置。
  • CheckAllowDestructionRecursive,这是一个销毁检查。
  • 与预制件相关的活动。

默认情况下,在 CPU Profiler 模块的 Hierarchy 视图中,具有仅编辑器标记的示例堆栈将折叠,并命名为EditorOnly [SampleName].虽然这些示例堆栈或其子示例可能会导致可能触发垃圾回收的托管分配,但它们不会影响GC.Alloc如果它们折叠了,则其父样本的值。

若要更改默认行为,请在模块详细信息窗格的右上角,选择上下文菜单并禁用“折叠编辑器仅限示例”设置。执行此作时,可以扩展示例并贡献其GC.Alloc值添加到封闭标记。

此选项不会影响“时间轴”视图,并且样本及其子项显示为展开状态。通常可以忽略带有这些标记的示例,因为它们与仅限编辑器的活动相关,并且对减少托管分配没有任何影响。但是,它们对于调查它们是否对播放模式有重大性能影响非常有用。

其他资源

文件访问探查器模块参考
检测所有函数调用