How to draw a background fast in cocos2d?

后端 未结 3 1849
后悔当初
后悔当初 2021-02-03 11:42

I\'m toying with a small game on my iPad using cocos2d and I\'ve run into some performance worries. I have a 512x512 image tiled as my background. That gives me around 40fps wit

相关标签:
3条回答
  • 2021-02-03 12:04

    First of all, are you running this on your iPad or the simulator? There is usually a large performance difference there. After looking at forums where people have similar problems, I would try splitting the whole 1024x768 image into 2 images that are 512x768. Hope that helps.

    0 讨论(0)
  • 2021-02-03 12:15

    I tried this myself with a 1024x768 background and get about 60fps even in debug with an iPad. Perhaps make sure your image doesn't have extra channels or alpha?

    0 讨论(0)
  • 2021-02-03 12:20

    Turns out cocos2d moves in mysterious ways. Adding the background to an otherwise empty wrapping CCSprite gets the framerate back up to 60:

    CCSprite *spback = [(CCSprite*)[CCSprite alloc] init];
    [self addChild:spback];
    
    CCSprite *sp = [CCSprite spriteWithFile:@"Background.png"];
    sp.position = ccp(1024/2, 768/2);
    [spback addChild:sp];
    

    Credits for this goes to yaoligang on the cocos2d forums.

    0 讨论(0)
提交回复
热议问题