我几乎完成了用Swift + SpriteKit编写的iOS游戏。
这是一个非常简单的游戏,最多30-32个节点。物理学只有一件事。其余的是一些动画云(大约6)。 CPU使用率约为2-3%,最大RAM使用率为75-80MB。
包括我在从一个场景转换到另一个场景时也会出现帧丢失。为什么会这样? (我在游戏初始化期间预加载所有纹理和声音,而不是在场景中)
当我使用5S到6S Plus的模拟器时,我看不到任何帧丢失。这太奇怪了。看起来它不是我的游戏,而是我的iPhone 6S?
现在,我也在不同开发人员的同一设备上安装了其他游戏,而且我经常也会随机丢帧。滞后2-3秒然后回到60fps。
有人知道这是否是X iOS更新后发生的事情?或者我甚至认为这是我的某种背景服务,正在扼杀我的手机。称之为facebook,whatsapp,messenger等。
我有什么方法可以检查一下发生了什么?
答案 0 :(得分:0)
与OpenGL模式相比,这是由较新版本的SpriteKit默认为Metal渲染模式引起的吗?例如,当PrefersOpenGL = YES添加到Info.plist时,您的问题会消失吗?我在blog post中介绍了一个关于SpriteKit重复着色器的性能问题。请注意,您应该仅在实际的iOS设备上进行测试,而不是在模拟器上进行测试。