Version: 6000.3
语言: 中文
使用 ProfilerRecorder 读取帧时序数据
渲染性能分析器模块参考

帧计时 API 计数器参考

下表描述了计数器的用途FrameTiming应用程序接口提供。

FrameTimingAPI 字段 分析器帮助您优化游戏的窗口。它显示了在游戏的各个领域花费了多少时间。例如,它可以报告渲染、动画制作或游戏逻辑所花费的时间百分比。更多信息
请参阅术语表
计数器
描述
cpuFrameTime CPU 总帧时间 总 CPU 帧时间(以毫秒为单位)。Unity 将其计算为两帧末尾之间的时间,包括任何开销或帧之间等待的时间。
cpuMainThreadFrameTime CPU主线程帧时间 活动主线程工作时间。这是不包括主线程等待VSync或渲染线程完成其工作的时间的PlayerLoop时间,计算如下:

cpuMainThreadFrameTime = PlayerLoop - GfxDevice.WaitForRenderThread - Gfx.WaitForPresentOnGfxThread - WaitForTargetFPS
cpuMainThreadPresentWaitTime 不适用 在帧期间等待帧呈现或 VSync 所花费的 CPU 时间,计算如下:

cpuMainThreadPresentWaitTime = Gfx.WaitForPresentOnGfxThread + WaitForTargetFPS.
cpuRenderThreadFrameTime CPU渲染线程帧时间(CPU Render Thread Frame Time) 活动渲染线程工作时间,无需 Unity 调用Present()函数,计算如下:

cpuRenderThreadFrameTime = RenderLoop - Gfx.PresentFrame.
gpuFrameTime GPU帧时间(GPU Frame Time) GPU 渲染单个帧的开始和结束之间的时间差。

下图可视化了 FrameTimingProfiler 帧数据之间的关系。显示 FrameTiming API 与 Profiler 数据关系的图表

其他资源

使用 ProfilerRecorder 读取帧时序数据
渲染性能分析器模块参考