Cocos2d'yi kullanarak iPad'imde küçük bir oyun oynuyor ve bazı performans kaygılarıyla karşılaşıyorum. Arka plan olarak döşenen 512x512 boyutunda bir resmim var. Yani, arka plan için kod şudur: (a CCSpriteBatchNode
olarak) 20 sprite ile 40fps etrafında bana verir:Cocos2d'de arka plan nasıl hızlı çizilir?
CCSprite *background;
background = [CCSprite spriteWithFile:@"oak.png" rect : CGRectMake(0,
0,
size.width,
size.height)];
background.position = ccp(size.width /2 , size.height/2);
ccTexParams params = {GL_LINEAR,GL_LINEAR,GL_REPEAT,GL_REPEAT};
[background.texture setTexParameters: ¶ms];
Ben arka planı kaldırırsanız ben sağlam 60fps olsun.
Görüntüyü PVRTC'ye dönüştürmeyi denedim ve bu da fazladan bir fps veya iki tane vermeyi denedim. Döşenmiş versiyon yerine 1024x768 görüntü kullanarak aynı çerçeveler elde ediyorum.
Arka planım eksen hizalanmış, ölçeklenmemiş ve genellikle statik kalacak. Çizimde bulmanın daha hızlı bir yolu olmalı diye düşünmek zorundayım CCSprite
? Her şeyden
Sarma harmanını otomatik olarak eklemeyi unutmayın. –
Sert kod boyutlarına kötü alıştırma yapmak için [[sprite texture] contentSize] kullanmalısınız – haawa