gpt4 book ai didi

ios - Cocos2d : is there a way to know which images are still loaded in memory?

转载 作者:行者123 更新时间:2023-11-28 22:26:56 25 4
gpt4 key购买 nike

我正在使用 Cocos2d 2.0 和 XCode 4.5.2,我确实想知道如何检测在特定时间哪些 Sprite 表/图像仍在内存中。

例子:在 Scene 中,我加载 images.pvr.ccz spritesheet,然后调用 replaceScene 加载 Scene2。当 Scene2 正在运行时,我想看看 images.pvr.ccz 是否仍在内存中,因为 resident memory increases at each scene.

我应该使用一些工具还是应该在纹理缓存相关类中添加一些断点?

我确实将图像添加到 frameCache 中,如下所示:

 [[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"images.plist"];
batchNode = [CCSpriteBatchNode batchNodeWithFile:@"images.pvr.ccz"];
[self addChild:batchNode];

其他详细信息 - 不需要

我有以下行为:每次替换场景时,内存都会增加“x”MB,这可能对应于 spritesheet 大小。

我在每个场景的 init 方法中添加了这些调用,但是内存仍然增加:

    [CCAnimationCache purgeSharedAnimationCache];
[CCShaderCache purgeSharedShaderCache];
[[CCSpriteFrameCache sharedSpriteFrameCache] removeUnusedSpriteFrames];

最佳答案

[[CCTextureCache sharedTextureCache] dumpCachedTextureInfo];

使用这个调用来查看此刻哪些纹理被加载到内存中。此外,如果您想删除未使用的纹理,请使用

[[CCTextureCache sharedTextureCache] removeUnusedTextures];

关于ios - Cocos2d : is there a way to know which images are still loaded in memory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18655106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com