发布: 2024 年 8 月(Java 快照)
贡献者: Nick Horvath(Engineering Systems Manager)、Sue Loh(Performance Tech Lead)、Timur Nazarov(Java)、David Ekermann(Bedrock)
规模测算: 若某作品平均 160 W,每天玩 3 小时,一年下来每台设备约消耗 175 kWh。10 万台设备累计相当于燃烧约 1350 万磅煤所产生的温室气体排放(EPA calculator)。在如此规模下,即使 10% 的能效提升也非常可观。
Java 版:“Reduce FPS when”设置
一项新的视频设置引入两种模式:- Minimized — 窗口最小化时将帧率上限压至 10 FPS。
- AFK(默认) — 玩家超过 1 分钟无输入时将帧率上限压至 30 FPS,总空闲 10 分钟后进一步压至 10 FPS。窗口最小化时同样压至 10 FPS。
AFK 模式测量(NVIDIA GeForce RTX 3080,仅 GPU)
在 10 分钟不活动后,Minecraft 的功耗与 OS 自身所需接近——相较旧的空闲基线约下降 73%。
最小化测量
旧版本在最小化时实际功耗更高(134 W,而正常玩法为 101 W)——游戏仍以满帧率在幕后渲染。新版本将其降至 25 W。
主机:手柄断开时的帧率上限
Minecraft 遥测显示,Controller Disconnected(手柄断开)对话框出现在屏幕上的时间出乎意料地多,而游戏仍以满 60 FPS 渲染它。各平台屏幕时长
团队在手柄断开对话框可见 60 秒后将帧率降至 10 FPS。以 PIX Power Monitor 测得:
该实验已获验证,正在于即将发布的 Bedrock 版本中,将单人场景的该改动固化,并计划在多人场景及更多对话框上继续推进。
使用的工具
- HWInfo — PC 上仅 GPU 的功耗测量。
- PIX Power Monitor — XBOX 主机测量。
- Certification testing — 受控且可重复的采集。
给其他工作室的启示
- 先用埋点找出被浪费的功耗。 遥测显示手柄断开对话框在 XBOX 玩时中占据 10–14%。
- 在玩家看不见的地方渲染,就是纯浪费。 最小化窗口、断开手柄以及长时间空闲都是候选场景。
- 分阶段降低。 1 分钟后 30 FPS、10 分钟后 10 FPS,可为快速回来的玩家保留响应性。
