主要观点:
- 移动游戏需在渲染性能和节能间找到平衡,传统游戏以最高帧率渲染,而移动设备硬件较弱且不能主动散热,电池也是限制因素。
- 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.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。