rustunit

主要观点:

  • 移动游戏需在渲染性能和节能间找到平衡,传统游戏以最高帧率渲染,而移动设备硬件较弱且不能主动散热,电池也是限制因素。
  • Bevy 引擎是通用游戏引擎,默认设置未针对移动优化,需调整。
  • 可通过限制帧率来解决移动设备上的问题,如配置 winit 的刷新速率,还可在运行时根据游戏状态调整帧率。

关键信息:

  • 移动设备硬件不如 PC 和主机,热量通过外壳和屏幕散发,易发热,电池也是限制因素。
  • 可使用 UpdateMode::reactive 将帧率限制为 60Hz,也可根据游戏状态调整,如在非 GameState::FastAction 状态下将帧率降低到 28Hz。
  • Bevy 0.15 已将该解决方案纳入官方移动示例,此问题及解决方案是在调查 Bevy 0.15 的回归问题时发现的,该控制刷新率的机制自 Bevy 0.14 就已存在。

重要细节:

  • 传统游戏在 PC 和主机上充分利用硬件以实现最高帧率和最佳体验,移动设备则不同。
  • 设备可能已 VSync 至 60Hz 导致误认为问题在别处,Bevy 默认会尽可能频繁更新系统,即使渲染更新为 60fps 速率。
  • 可通过添加系统来根据游戏状态调整帧率,逻辑可更复杂,允许在特定状态外的短时间动画中临时提升帧率。
  • 若需 Bevy 或 Rust 项目支持,可联系 Contact us.
阅读 7
0 条评论