性能分析器一个帮助您优化游戏的窗口。它显示了游戏在各个区域花费的时间。例如,它可以报告渲染、动画或游戏逻辑中花费时间的百分比。 更多信息
参见 术语表 窗口包含以下区域
使用下拉菜单向性能分析器添加或删除模块。性能分析器模块在窗口上半部分的图表中以逐帧的方式显示性能数据随时间的变化。
当您选择一个性能分析器模块时,其图表将显示在性能分析器窗口的上半部分。窗口的下半部分包含一个模块详细信息面板,其中显示与所选性能分析器模块相关的信息。此区域在您首次打开性能分析器时为空白,并在您开始分析应用程序时填充信息。
有关更多信息,请参阅 性能分析器模块简介。
模块 | 描述 |
---|---|
亮点 | 显示有关您的应用程序是否满足其目标帧率以及其性能是否受 CPU 或 GPU 限制的信息。有关更多信息,请参阅 亮点性能分析器模块。 |
CPU 使用率 | 显示应用程序在物理、脚本一段代码,允许您创建自己的组件、触发游戏事件、随着时间的推移修改组件属性并以您喜欢的任何方式响应用户输入。 更多信息 参见 术语表、动画和垃圾收集等区域花费最多时间的概述。此模块包含有关应用程序的广泛性能分析信息,您可以使用它来决定要使用哪些其他模块来调查应用程序中更具体的问题。即使您关闭此模块,它也始终处于活动状态。有关更多信息,请参阅 CPU 使用率性能分析器模块。 |
GPU 使用率 | 显示与图形处理相关的信息。默认情况下,此模块不处于活动状态,因为它开销很大。有关更多信息,请参阅 GPU 使用率性能分析器模块。 |
渲染 | 显示有关 Unity 如何在您的应用程序中渲染图形的信息。有关更多信息,请参阅 渲染性能分析器模块。 |
内存 | 显示有关 Unity 如何在您的应用程序中分配内存的信息。此模块有助于调查脚本分配如何导致 垃圾收集,或者应用程序的资产内存使用情况如何随时间推移。有关更多信息,请参阅 内存性能分析器模块。 |
音频 | 显示与应用程序中的音频相关的信息,例如音频系统需要多少 CPU 使用率以及 Unity 为其分配了多少内存。有关更多信息,请参阅 音频性能分析器模块。 |
视频 | 显示与应用程序中的 视频 相关的信息。有关更多信息,请参阅 视频性能分析器模块。 |
物理 | 显示有关物理系统处理的应用程序中的物理的信息。有关更多信息,请参阅 物理性能分析器模块。 |
物理 (2D) | 显示有关物理系统在您的应用程序中处理 2D 物理的位置的信息。有关更多信息,请参阅 2D 物理性能分析器模块。 |
UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息 参见 术语表 |
显示有关 Unity 如何处理应用程序的 UI 批处理的信息,包括 Unity 批处理项目的原因和方式。有关更多信息,请参阅 UI 和 UI 详细信息性能分析器模块。 |
UI 详细信息 | 此模块的图表添加了有关批次和顶点数的数据,以及包含有关触发 UI 更改的用户输入事件的信息的标记。有关更多信息,请参阅 UI 和 UI 详细信息性能分析器模块。 |
实时 GI | 显示有关 Unity 在应用程序中的 全局照明一组对直接光和间接光进行建模的技术,以提供逼真的照明效果。 参见 术语表 照明子系统上花费多少 CPU 资源的信息。有关更多信息,请参阅 全局照明性能分析器窗口。 |
虚拟纹理 | 显示有关应用程序中的 流式虚拟纹理 的统计信息。有关更多信息,请参阅 虚拟纹理性能分析器模块。 |
文件访问 | 显示有关应用程序中文件访问的信息。有关更多信息,请参阅 文件访问性能分析器模块。 |
资产加载 | 显示有关应用程序如何加载资产的信息。有关更多信息,请参阅 资产加载性能分析器模块。 |
性能分析器模块编辑器 (⚙) | 打开 性能分析器模块编辑器 以自定义列表中的性能分析器模块。 |
恢复默认值 | 选择恢复默认值以删除所有自定义性能分析器模块并将模块列表重新排序为其默认排序。 |
性能分析器控件位于性能分析器窗口顶部的 工具栏Unity 编辑器顶部的按钮和基本控件行,允许您以各种方式与编辑器交互(例如,缩放、平移)。 更多信息
参见 术语表 中。使用这些控件开始或停止记录性能分析器数据,以及浏览性能分析帧。
属性 | 描述 | |
---|---|---|
目标选择下拉菜单 | 使用目标选择下拉菜单为性能分析器选择一个平台或播放器来收集数据。 | |
搜索 | 使用搜索栏查找播放器。您可以按其名称或设备类别进行搜索,例如 Remote。当您按类别进行搜索时,结果将显示该类别中的所有设备。 | |
播放器名称 | 显示 Unity 通过网络或直接连接检测到的任何正在运行的播放器。您可以通过其名称和运行播放器的平台来识别这些播放器,例如 iPhonePlayer (My iPhone) 。您可以在 性能分析器首选项 窗口中覆盖此名称。 |
|
播放模式(默认) | 在播放模式下分析您的应用程序。这是默认设置,但您可以在首选项中更改此行为。有关更多信息,请参阅 在播放模式下收集性能数据。 | |
编辑模式 | 分析 Unity 编辑器并显示编辑器当前正在使用的资源。有关更多信息,请参阅 收集有关 Unity 编辑器的性能数据。 | |
直接连接 | 显示直接连接到您计算机的任何设备。选择输入 IP 手动输入要分析应用程序的设备的 IP 地址。有关更多信息,请参阅 在目标平台上收集性能数据。 | |
记录 (⏺) | 启用此设置以在运行应用程序时为 活动模块 记录性能分析信息。如果禁用记录,性能分析器在运行应用程序时不会收集任何数据。 | |
上一帧(后退箭头) | 向后浏览一帧。 | |
下一帧(前进箭头) | 向前浏览一帧。 | |
当前帧 (⏭) | 当您选择当前帧按钮时,帧指示器线跳到最后记录的帧,性能分析器进入当前帧模式。当性能分析器在此模式下收集数据时,它会停留在当前帧上并实时显示它收集的数据。再次选择该按钮退出当前帧模式。 | |
帧号 | 指示所选帧的编号。左侧的数字是当前选中的帧,右侧的数字是性能分析器在整个性能分析会话期间收集的所有帧的总数。 | |
清除 | 从性能分析器窗口中擦除所有数据。 | |
播放时清除 | 启用此设置以在您下次单击播放器窗口中的播放或连接到新目标设备时从性能分析器窗口中擦除所有数据。 | |
深度分析 | 启用此设置以分析所有 C# 方法。当您启用此设置时,Unity 会向所有 mono 调用添加检测,然后允许更详细地调查您的脚本。有关更多信息,请参阅 深度分析。 | |
调用堆栈 | 选择要记录其完整调用堆栈的样本以进行脚本内存分配。当您启用此选项时,性能分析器记录的帧包含有关所选样本的完整调用堆栈上的信息,这些信息会导致托管脚本分配,即使 深度分析设置 未处于活动状态。您可以选择以下值,并且可以同时激活多个选择。 | |
GC.Alloc | 启用所有托管内存分配的调用堆栈。每当 Unity 进行 托管内存分配 时,它都会发出 GC.Alloc 样本。 |
|
UnsafeUtility.Malloc (Persistent) | 启用使用 Allocator.Persistent 进行的 本机内存分配 的调用堆栈。虽然 Temp 和 TempJop 分配器更快,但它们只允许短期分配,为了保持它们尽可能快,Unity 不会用调用堆栈对其进行检测。 | |
JobHandle.Complete | 启用使用 JobHandle.Complete 完成的作业的调用堆栈。每当作业使用 Complete 时,它都会导致线程空闲,因此为了优化代码,您可以启用调用堆栈以发现代码中同步点发生的位置。 |
|
加载(方框和箭头) | 将保存的性能分析器数据加载到性能分析器窗口中。您还可以加载播放器已通过 Profiler.logFile API 写入文件的二进制性能分析数据。 | |
保存 (💾) | 将性能分析器数据保存为项目文件夹中的 .data 文件。 |
更多菜单包含以下设置
设置 | 描述 |
---|---|
色盲模式 | 启用此设置可使 Profiler 在其图表中使用更高对比度的颜色。这增强了患有红绿色盲症(如氘代色盲、原发性色盲或三色盲)用户的可见度。 |
显示“当前”帧的统计信息 | 默认情况下,当您选择“当前帧”按钮并进入“当前帧”模式时,帧指示器线没有带当前帧统计信息的注释。这是因为统计信息注释可能会使实时查看数据变得困难。要显示注释,请启用此设置。 |
偏好设置 | 打开 偏好设置窗口 以调整特定于 Profiler 的属性。 |