使用cocos2d在iPhone上显示游戏分数的最佳方式?

时间:2008-12-03 16:22:27

标签: iphone objective-c cocoa-touch cocos2d-iphone

我希望使用cocos2d在iPhone应用中持续显示游戏分数。关闭cocos2d显示应用程序运行的FPS的代码:

-(void) showFPS
{
    frames++;
    accumDt += dt;

    if ( accumDt > 0.1)  {
        frameRate = frames/accumDt;
        frames = 0;
        accumDt = 0;
    }

    NSString *str = [NSString stringWithFormat:@"%.1f",frameRate];
    [FPSLabel setString:str];
    [FPSLabel draw];
}

我可以正确地显示分数,但它会闪烁,即使应用程序的运行速度超过60 FPS ......有什么想法吗?

2 个答案:

答案 0 :(得分:9)

对于任何可能感兴趣的人,我最终都使用了cocos2d标签:

scoreLabel = [Label labelWithString: [NSString stringWithFormat:@"%d", score] dimensions: CGSizeMake(180, 20) alignment: UITextAlignmentRight fontName:@"Arial" fontSize: 20];
[scoreLabel setPosition: cpv(100,100)];
[self add: scoreLabel];

希望这可以帮助别人。

答案 1 :(得分:5)

请尝试使用LabelAtlas。它更快(它消耗的CPU少得多)。 请参阅cocos2d发行版附带的AtlasDemo,了解如何使用它。