Pergunta

Eu estou olhando para exibir persistentemente a pontuação do jogo em um aplicativo para iPhone usando cocos2d. Indo fora do código que mostra cocos2d o FPS o aplicativo está sendo executado em:

-(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];
}

Eu posso obter a pontuação para exibir corretamente, mas pisca, mesmo que o aplicativo está sendo executado no mais rápido que 60 FPS ... Alguma idéia?

Foi útil?

Solução

Tente usar LabelAtlas vez. É mais rápido (que consome muito menos CPU). Veja a AtlasDemo que vem com a distribuição cocos2d para ver como usá-lo.

Outras dicas

Para qualquer um que possa estar interessado, acabei usando uma etiqueta de cocos2d assim:

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];

Esperamos que isso pode ajudar outra pessoa.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top