Ale*_*lev 2 sprite cocos2d-iphone
我有精灵"砖",我想在我的视差背景中多次使用.有没有办法可以重用同一个精灵?因为我必须为我的精灵设置碰撞检测...如果我使用太多的变量,我认为这是无用的.谢谢您的帮助
您无法重复使用CCSprite的同一实例.但是,您可以重复使用Cocos2D为您自动执行的纹理.
您可以使用相同的图像文件或精灵帧创建多个精灵.例如,这将创建100个砖精灵,并为每个精灵提供从0到99的唯一标记:
for (int i = 0; i < 100; i++)
{
CCSprite* brick = [CCSprite spriteWithFile:@"brick.png"];
[self addChild:brick z:0 tag:i];
}
Run Code Online (Sandbox Code Playgroud)
使用图像文件"brick.png"的所有精灵都将使用相同的内存中纹理.CCTextureCache缓存每个加载的映像文件,以便每个CCSprite的额外内存使用量接近500字节(我使用Objective-C运行时检查了一次).这意味着使用相同纹理的一千个精灵将使用大约500 KB加上纹理使用的内存量.
| 归档时间: |
|
| 查看次数: |
3936 次 |
| 最近记录: |