
性能分析和调试工具
为方便起见,此网页已进行机器翻译。我们无法保证翻译内容的准确性或可靠性。如果您对翻译内容的准确性有疑问,请参阅此网页的官方英文版本。
每位游戏创作者都知道,流畅的性能对于创造沉浸式游戏体验至关重要,而要实现这一目标,您需要对游戏进行性能分析。
概述 Unity 提供的分析和调试工具以及目标平台可用的那些工具。
此处的信息摘自电子书《Ultimate guide to profiling Unity games》。该电子书由游戏开发、性能分析和优化领域的外部和内部 Unity 专家共同编写。

使用 UNITY 内存性能分析器模块快速收集与项目中 ASSET 和 SCENE 对象内存分配相关的信息。
同时使用 Unity 和原生工具,以获得最佳结果
性能分析就像做侦探一样,你需要揭开应用程序性能滞后或代码内存过剩的奥秘。在项目开发生命周期的早期进行规划是性能分析的最佳收获。这是一个持续的主动和迭代过程。通过尽早、经常地、而不是在游戏发售前进行性能分析,您和您的团队可以理解并建立项目的“性能特征”。分层显示,如果性能骤降,您将能够轻松发现问题并快速解决问题。
最准确的性能分析结果来自在目标设备上运行和分析构建,以及使用特定于平台的工具挖掘每个目标平台的硬件特性。
Unity 附带了一系列功能强大的免费性能分析工具,可在编辑器中和硬件上分析和优化代码。此外,还有几个专为每个目标平台设计的出色的本机性能分析工具,例如 ARM、Apple、Sony 和 Microsoft 提供的此类工具。两者结合使用可以更全面地查看所有目标设备的应用程序性能。

使用帧调试器分析识别出的过度绘制是如何发生的
Unity 性能分析工具
Unity的分析工具可在Editor和Package Manager中找到。每个工具都专门分析项目的各个部分:
- Unity Profiler可帮助你衡量项目绩效并确定哪些流程可能导致问题。Profiler 收集并显示数据,例如执行从音频和物理到渲染和动画等不同任务所使用的 CPU 时间。它可测量 Unity 编辑器、运行模式下的应用程序以及运行模式下应用程序的设备的性能。你可以用这个基本工具来开始分析。查看此性能分析课程以开始。
- 内存性能分析器深入分析了内存性能。减少内存占用将帮助你减少崩溃、缩短加载时间,并使项目与旧设备兼容。内存性能分析器目前处于预览状态,预计将在 Unity 2022 LTS 中得到验证。
- Profile Analyzer汇总并可视化来自一组Unity Profiler帧的帧和标记数据,以帮助你检查它们在许多帧上的行为。(这补充了 Unity Profiler 中已有的单帧分析。)您还可以比较两个性能分析数据集,以确定更改如何影响应用程序的性能。
- 帧调试器可将正在运行的游戏的状态冻结到特定帧,然后查看用于渲染该帧的各个绘制调用。除了列出绘制调用外,调试器还允许您一次一个地遍历它们,以便您能够看到场景是如何从其图形元素构建的。
- Profiling Core软件包提供了API,用于将上下文信息添加到Unity Profiler捕获图。

ARM 的 STREAMLINE 性能分析器包含大量性能计数器信息,可以在目标 ARM 硬件上的实时性能分析会话期间捕获这些信息。
原生性能分析工具
安卓/ARM
- Android Studio:最新的安卓工作室包括一个新的安卓分析器,以取代以前的安卓监测工具。使用它来收集有关安卓设备上硬件资源的实时数据。
- ARM移动工作室:这是一套工具,可帮助您详细分析和调试游戏,适用于运行 ARM 硬件的设备。
- Snapdragon Profiler:仅适用于 Snapdragon 芯片组设备。分析 CPU、GPU、DSP、内存、功耗、散热和网络数据,帮助查找和修复性能瓶颈。
Intel
- Intel VTune:使用这套工具快速查找和修复 Intel 平台上的性能瓶颈。仅适用于Intel处理器。
- Intel GPA 套件:这是一套以图形为中心的工具,可帮助你通过快速识别问题区域来提高游戏性能。
Xbox/Windows
- PIX:PIX是一款性能调整和调试工具,适用于使用DirectX 12的Windows和Xbox游戏开发者。它包括了解和分析 CPU 和 GPU 性能以及监控各种实时性能计数器的工具。若想详细了解怎样用PIX开发Xbox游戏,请注册成为 ⁇ 氜발자。
PC/Universal
- AMD μProf:AMD uProf 是一种性能分析工具,用于了解和分析在 AMD 硬件上运行的应用程序的性能。
- NVIDIA NSight:使开发人员能够使用 NVIDIA 最新的视觉计算硬件构建、调试、分析和开发一流和先进的软件的工具。
- 超亮:Superluminal 是一款高性能高频性能分析器,支持在 Windows、Xbox One 和 PlayStation 上使用 C++、Rust 和 .NET 编写的性能分析应用程序。不过,它是一种付费产品,必须获得许可才能使用。
PlayStation
- CPU 性能分析器工具适用于 PlayStation 硬件。要想了解更多详情 您必须是PlayStation ⁇ ��발자
iOS
- Xcode Instruments 和 Xcode Frame DebuggerInstruments 是 Xcode 工具集的一部分,是一种强大而灵活的性能分析和测试工具。
WebGL
- Firefox Profiler:使用 Firefox Profiler 深入了解调用堆栈并查看 Unity WebGL 构建的火焰图(除其他外)。它还带有一个对比工具,可以并排查看性能分析捕获图。
- Chrome DevTools 性能:另一个可用于分析 Unity WebGL 构建的网络浏览器工具。
GPU调试和性能分析工具
虽然 Unity Frame Debugger 工具会捕获并显示从 CPU 发出的绘制调用,但以下工具可以帮助您显示 GPU 在接收这些命令时的行为。
部分功能针对具体平台,且平台集成度更高。请了解一下与感兴趣的平台相关的工具:
- ARM Graphics Analyzer:ARM Mobile Studio软件套件的一部分
- RenderDoc:桌面和移动平台GPU调试器
- Intel GPA:基于Intel平台的图形性能分析
- Apple Frame Capture Debugging Tools:适用于 Apple 平台的 GPU 调试
- Visual Studio图形诊断:为基于DirectX的平台(如Windows或Xbox)选择该和/或PIX
- NVIDIA Nsight Frame Debugger:适用于NVIDIA GPU的基于OpenGL的帧调试器
- AMD RadeonͰ발자工具套适用于 AMD GPU 的 GPU 性能分析器
- Xcode帧调试器:适用于iOS和macOS
