好的,这就是我为解决此问题所做的工作。
我有一个功能可以每毫秒更新一次分数,是的,这太糟糕了。所以我改变了分数更新发生的少一点。
我将此添加到 .h 文件中
@property (nonatomic,assign) int slowScore;
并将其添加到我在 .m 文件中的函数中
if(slowScore < 5){
slowScore++;
}else if(slowScore == 5){
self.intScore = self.intScore + 5;
slowScore = 0;
}
[self.lblScore setString:[NSString stringWithFormat:@"%d", self.intScore]];
通过这样做,我能够保持相同的分数,但它会更新 leed 时间,通过这样做,我的帧率保持在 60fps :)
+1 @jonmorgan 建议更改 CCLabelAtlas。
我使用 CCLabelTTF 和 CCLabelAtlas 测试了我的新代码,并且都将帧速率保持在 60fps,但是使用代码的其他部分运行一些测试,CCLabelAtlas 的性能要好得多。