Snaplytics JS Tests

画面跳帧测试

检查您的显示器与系统是否在每次刷新时都呈现新帧,还是中途悄悄丢弃一些。测试会根据您测得的刷新率为每个动画帧计时,并标记任何有一个或多个帧缺失的空隙。运行时请保持此标签页聚焦以获得准确读数。

Hz

实时监测运行中 — 请保持此标签页聚焦以获得准确读数。

实时
最近的帧准时跳过
正在收集帧…
刷新率
Hz
准时帧
0
跳过
0
跳帧率
最长空隙

相机拍摄条(可选)

标记会随每个渲染帧前进一格。以高速快门拍摄屏幕或以慢动作录像 — 缺少的一步会揭示掉帧。相对上方的检测器为辅助性质。

检测器的工作原理

浏览器每次画面刷新会调用一次 requestAnimationFrame,因此回调之间的间隔应保持接近一个刷新间隔 — 在 60 Hz 面板上约 16.7 ms,在 144 Hz 下约 6.9 ms。测试会记录这些间隔并取中位数来建立预期间隔,这同时得出您的真实刷新率。当某个间隔拉伸到约 1.5 倍预期间隔或更多时,表示至少有一帧从未被呈现;测试会将间隔四舍五入到最接近的整数间隔数,以估算掉了多少帧。切换标签页或最小化窗口造成的长暂停会被忽略而不计为跳帧。

画面跳帧与卡顿及抖动的差异

这些术语有所重叠,但描述的是不同的故障。画面跳帧(掉帧)是指管线无法为某个刷新周期提供新图像,因此前一帧被显示两次,画面看起来像跳动。卡顿是不均匀的帧节奏 — 帧有到达,但间隔不规则 — 即使技术上没有掉帧,看起来也会一顿一顿的。抖动则是帧率无法整除刷新率时出现的稳定、有节奏的不均匀,例如在 60 Hz 屏幕上播放 24 fps 电影。本测试针对的是刷新级别真正掉落的帧;若节奏不均,零跳帧的运行仍可能感觉不到完美流畅。

显示器为什么会跳帧

  • 线缆或带宽限制:高分辨率下的高刷新率可能超过线缆或接口版本所能承载的量,因此连接会掉帧。这是只在显示器最高刷新率下才跳帧的典型原因。
  • 超频的刷新率:将面板推到超过其额定 Hz 通常看起来稳定,但会悄悄重复帧而不显示新帧。
  • GPU、驱动或温度问题:过时的驱动、过载或过热的 GPU,或激进的省电模式,都可能让显示器拿不到完成的帧。
  • 后台负载与浏览器节流:其他标签页或应用中的繁重工作,以及浏览器对未聚焦标签页的 requestAnimationFrame 减速,都会造成本测试所测量的空隙。

本测试测量与不测量什么

这是一个浏览器级别的呈现管线的测试 — 涵盖显示器、线缆、GPU 输出、驱动和浏览器 — 而非任何单一游戏引擎。它报告的是此页面聚焦时,您的系统有多可靠地将完成的帧交给显示器。它看不到游戏内部渲染的帧、无法测量输入延迟,也无法取代硬件信号发生器。为获得最可靠的结果,请将笔记本接上电源、关闭繁重的后台标签页、保持此标签页聚焦,并让一次完整的定时运行跑完。下方的可选拍摄条用于以高速快门拍摄屏幕,可揭示难以察觉的跳帧。