0

我是 cocos2D 编程的新手。在我的代码中我写 [[CCTextureCache sharedTextureCache] removeUnusedTextures]; 删除未使用的纹理。但是当纹理被移除时,游戏场景会闪烁几分之一秒。如何解决这个问题。我知道我做错了什么???

我正在使用此代码创建精灵。

spriteEnemyGlider = [CCSprite spriteWithFile:@"enemyGlider.png" rect:CGRectMake(0,0,79,21)];

当它被删除时,在控制台中它会打印

cocos2d: CCTextureCache: removing unused texture: enemyGlider.png

并且出现闪烁。

我做错了吗?

4

1 回答 1

0

您不想在游戏过程中移除未使用的纹理。把它留给你改变场景的情况。尤其是如果它是一个普通的纹理,继续从内存中删除它会适得其反,因为 cocos2d 将不得不再次加载它,这需要时间。

我敢打赌,您的闪烁问题来自于 removeUnusedTexture 方法花费了异常长的时间,或者它删除了纹理只是为了在一瞬间重新加载它。

于 2012-07-05T19:56:07.713 回答