Version: 2021.2
Creating Custom Profiler modules
Creating a custom module details panel

Profiler Module Editor(性能分析器模块编辑器)

Profiler Module Editor 工具可用于将您自己的自定义模块添加到 Unity Profiler 窗口。您还可以向模块添加内置计数器,或使用运行时 API 将您自己的自定义计数器添加到模块。有关如何实现自己的计数器的信息,请参阅有关 Profiler Counters API 的 Profiling 包文档。

当您需要深入了解要进一步分析的统计信息,或打算将有关您的应用程序的自定义统计信息添加到 Profiler 窗口时,此工具特别有用。

 Profiler Module Editor 窗口,选择了一个新模块
Profiler Module Editor 窗口,选择了一个新模块

要使用 Profiler Module Editor,请打开 Profiler 窗口 (Window > Analysis > Profiler),然后选择 Profiler Modules 下拉选单。

The Profiler module 下拉选单
The Profiler module 下拉选单

选择齿轮图标,打开 Profiler Module Editor 窗口。该窗口包含三列:

  • Profiler Module 的列表: 此列表包含可添加到 Profiler 窗口的所有可用模块。内置模块在列表中呈灰色显示,表示您无法编辑其内容。您可以拖放模块以重新排列它们在 Profiler 窗口中的显示顺序。当您创建自己的自定义性能分析器模块时,该模块也会出现在此列表中。
  • Profiler Module 信息窗格(仅在您创建或选择自定义模块时出现):列出自定义模块中包含的计数器
  • 可用计数器(仅在您创建或选择自定义模块时出现):列出您可以添加到自定义模块的可用计数器。

创建自定义模块

要创建自定义模块,请选择 Profiler Module Editor 窗口左下角的 Add 按钮。Unity 在名为 New Profiler Module 的列表中添加了一个新的 Profiler 模块。要重命名该模块,请单击文本字段并使用键盘设置名称。

向模块添加计数器

要在自定义性能分析器模块中收集数据,您必须至少添加一个计数器以便模块进行跟踪。您可以添加内置的两个 Unity 计数器,或使用 ProfilerRecorder API 创建您自己的计数器以添加到模块。可用计数器列表在 Available Counters 窗格中显示。

如果您没有将任何数据加载到 Profiler 窗口中,那么您创建的任何计数器在加载 Profiler Module Editor 时都不会出现在 Available Counters 窗格中。要查看您的自定义计数器,您必须使用 Profiler 捕获或加载一些包含您发出的计数器的数据,然后重新打开 Profiler Module Editor。

可用的 Unity 计数器分为三类:MemoryRenderVirtual Texturing。有关这些类别中的可用特定计数器的更多信息,请参阅每个模块的文档。

如果您使用 API 添加自己的计数器,则必须先将一些数据加载或收集到 Profiler 窗口中,然后您的自定义计数器才会出现在 Profiler Module Editor 的 User 标题下的 Available Counters 窗格中。

列出用户计数器的 Profiler Module Editor。
列出用户计数器的 Profiler Module Editor。

要将计数器添加到模块,请在 Available Counters 列表中选择该计数器,然后选择 Add Selected 按钮。或者,您可以双击计数器将其添加到模块中。Unity 然后将这些计数器添加到选定的 Profiler 模块。要一次向模块添加多个计数器,您可以按住 Shift 键并单击两个计数器以选择两者之间的所有计数器,或者您可以按住 Ctrl(macOS 上为 Command 键)逐一选择计数器,然后选择 Add Selected 按钮。

要对计数器重新排序,可对计数器执行拖放操作。一个模块最多只能添加 10 个计数器。

使用自定义模块

如果您对自定义模块感到满意,请选择 Profiler Module Editor 窗口右下角的 Save Changes 按钮。Unity 关闭窗口,然后您可以在 Profiler 窗口中看到您的新模块。

带有自定义模块的 Profiler Module Editor(左)。右侧是 Profiler 窗口中的自定义模块。
带有自定义模块的 Profiler Module Editor(左)。右侧是 Profiler 窗口中的自定义模块。

为了有效地使用您的数据并将其与内置模块进行比较,您可以在 Profiler 窗口中对模块重新排序。为此,请打开 Profiler Module Editor,然后将模块拖放到 Profiler Modules 窗格。

如果您想根据内置性能分析器数据中的峰值检查应用程序的自定义元素,这将特别有用。

一个自定义性能分析器模块,在游戏屏幕上显示子弹和坦克的数量。注意与渲染数据的对应关系。
一个自定义性能分析器模块,在游戏屏幕上显示子弹和坦克的数量。注意与渲染数据的对应关系。
Creating Custom Profiler modules
Creating a custom module details panel