我的app app delegate:[director setAnimationInterval:1.0/60];
尽管我的应用程序运行大约30 fps。奇怪的是,它目前一无所获。我的唯一图层的init
只做基于图像添加6个精灵,没有动作或运行,它们只是在屏幕上显示。这些精灵的总大小约为500 KB。在模拟器或设备上,FPS显示大约30个。
当应用程序中没有任何其他内容发生时,什么可能导致如此低的帧速率?没有预定的更新,也没有任何运行;只是显示精灵。
答案 0 :(得分:1)
如果您的精灵很大,可能是旋转或缩放或不透明度< 255,你在旧设备(第一代或第二代)上运行它,那么你可能只是遇到了这些设备的性能限制。
如果您使用大型精灵或旋转和缩放的精灵,您可以使用CCSpriteBatchNode和添加每个精灵图像的纹理图集来提高性能。您还可以将纹理的颜色位深度从32位减少到16位甚至PVR压缩。
如果您更改了任何默认启动设置:例如,将帧缓冲区从16位更改为32位或启用深度缓冲也会降低性能。
由于你只有6个精灵,如果你运行你的样本应用程序有5个,4个,3个,2个,1个没有精灵,测试会发生什么不是很有趣吗?