Android FPS 节流是游戏模式的一项干预措施,可帮助游戏以更稳定的帧速率运行,从而降低电池消耗。此干预措施在 Android 13 或更高版本中可用。
随着越来越多的 Android 设备配备 90Hz 和 120Hz 等更高刷新率的显示屏,大多数游戏都会尝试以高 FPS 运行。但是,它们通常不考虑用户对优先选择性能还是电池续航时间的偏好。这导致了几个问题:
无法始终以较高 FPS 运行的游戏最终会导致 FPS 不稳定或不均匀。
用户通常并不真正需要更高的 FPS,因为电池会耗尽太快。
FPS 节流只能限制帧速率。例如,当游戏最初以 60 FPS 运行时,FPS 节流干预无法使其以 120 FPS 运行,但节流到 40 FPS 和 30 FPS 是有效的。
FPS 节流可使 GPU 功耗降低多达 50%,系统功耗降低 20%。它还有助于以更流畅、更少卡顿的帧速率运行未进行帧速控制的游戏。
未进行帧速控制的游戏通常具有较高的峰值帧速率,但帧时间变化较大。这会显著影响玩家对性能的感知。FPS 节流干预措施只帮助未进行帧速控制的游戏从平台端实现帧速控制。
FPS 节流干预措施的结果可能因所用设备、环境条件和其他因素而异。
与应用帧速控制实现的交互
当同时强制执行应用帧速控制实现和 FPS 节流时,最终帧速率通常是较低的目标帧速率。
开始
本部分介绍了如何使用 Android 调试桥 (adb) 设置和使用 FPS 节流。
启用游戏模式干预措施
要为游戏启用游戏模式干预措施,请使用以下命令
adb shell device_config put game_overlay <PACKAGE_NAME> <CONFIG>
设置 FPS 干预措施
要设置目标 FPS 节流干预措施,请使用 device_config
命令。以下是一个为性能模式和电池模式设置 FPS 节流的示例
adb shell device_config put game_overlay <PACKAGE_NAME> mode=2,fps=90:mode=3,fps=30
参数详情
mode
[2|3]:2
和3
分别表示性能模式和电池模式fps
[0|30|40|45|60|90|120]:根据您使用的设备(120、90 或 60Hz 设备),我们建议选择设备最大刷新率的因数帧速率。0
是默认值。
以下是每种显示类型支持的帧速率
- 60Hz 显示屏:60 FPS,30 FPS
- 90Hz 显示屏:90 FPS,45 FPS,30 FPS
- 120Hz 显示屏:120 FPS,60 FPS,40 FPS,30 FPS
获取结果
要查看和分析结果,您可以检查 FPS 计数器或捕获 Perfetto 跟踪。以下是如何在以 120 FPS 运行的游戏中查看 FPS 计数器的示例
查看 FPS 计数器
要验证您的 FPS 节流设置,您可以运行游戏并在游戏信息中心打开 FPS 计数器。为此,请按照以下步骤操作
运行游戏时,向下滑动并按下游戏信息中心图标。
按下 FPS 按钮,打开 FPS 计数器。
按下 X 按钮关闭游戏信息中心。向右滑动箭头以显示 FPS 计数器。
捕获 Perfetto 跟踪
要深入了解游戏的性能,我们建议您执行 Perfetto 跟踪。有关执行跟踪的更多信息,请参阅快速入门:在 Android 上记录跟踪。
执行跟踪时,使用 android.game_interventions
数据源。跟踪完成后,将显示跟踪查看器页面。在导航栏中,选择信息和统计数据,然后查看游戏模式和干预措施列表。例如
FPS 节流干预措施以“fps=X”的格式显示,其中 X
是特定游戏模式下的节流 FPS。0
是默认值。