Unity安卓平台帧率异常波动问题求助
Unity安卓平台帧率异常波动问题求助
大家好,我最近在Unity安卓项目里碰到了个特别棘手的帧率问题,试了各种优化方案都没解决,想请教下各位大佬有没有类似经验或者思路能指点一下!
问题现象
- 游戏刚在Android设备启动时,帧率显示约40fps,但过一段时间(短则1-2秒,长则几分钟)后,帧率会稳定在60fps(我的测试设备本身只支持60Hz刷新率)
- 把游戏最小化再重新打开,帧率又会回到40fps,重复之前的波动过程
- 我已经试过禁用所有对象和脚本,只保留相机和FPS计数器,甚至连GUI都关掉了,问题依然完全一样
- 偶然发现一个奇怪的触发点:插上充电器之后立刻拔掉,帧率会马上跳到60fps并稳定下来
环境与设置信息
- Unity版本:2022.2.7f1
- 测试设备:Redmi Note7,另外还测试了3台不同的安卓手机,都出现了同样的问题;只有一台支持120Hz的高性能手机能全程稳定维持120fps
- 关键设置:
- 代码中设置了
Application.targetFrameRate = 280; - 场景中所有静态对象都已标记为Static
- 使用的Shader都是Mobile系列(比如Mobile/Diffuse)
- 尝试切换过所有可用的Graphics API:OpenGLES 3、OpenGLES 2、Vulkan,问题都没有改善
- 代码中设置了
相关截图
- [Profiler CPU性能分析截图]
- [Graphics API选择设置截图]
- [Quality设置面板截图]
- [Player设置面板截图]
- [设备性能监控截图1]
- [帧率变化曲线截图]
- [GPU负载监控截图]
备注:内容来源于stack exchange,提问作者Максим




