关于Cocos2d 开发中有关精灵、精灵帧、精灵帧缓存、精灵表单以及plist文件之间的关系

本文介绍了Cocos2d游戏中精灵、精灵帧、精灵帧缓存和精灵表单的概念及它们之间的关系。通过zwoptex软件生成.plist和.png文件,然后使用CCSpriteFrameCache加载精灵帧,接着创建精灵表单,并从缓存中获取精灵帧来创建精灵,最后将精灵添加到精灵表单中进行渲染。整个过程清晰地展示了Cocos2d中精灵资源的管理和使用。
摘要由CSDN通过智能技术生成

1.首先将需要渲染的精灵图片用zwoptex软件生成一个.plist和.png文件。


2.建一个精灵帧缓存,以便将上文中建立的.plist文件中的精灵帧存入进去。


 CCSpriteFrameCache* spriteFrameCache = [CCSpriteFrameCache   sharedSpriteFrameCache];


3.通过addSrpiteFrameWithFile方法从plist文件中添加精灵帧。与此同时,纹理也将会通过1中建立的png文件自动载入。


 [spriteFrameCache  addSpriteFrameWithFile:@"SpriteSheet.plist"];            // SpriteSheet.plist 为上文建立的plist文件的名字。


4.通过1中建立的png图片,建立一个精灵表单。


 CCSptireBatchNode *batchNode = [CCSpriteBatchNode  batchNodeWithFile:@"SpriteSheet.png"];

 batchNode.position = CGPointZero;

 [self  addChild:batchNode];


现在已经有了精灵帧了,也把这些精灵帧都加到了精灵表单了,下面就可以通过这些精灵帧创建精灵了。


5.首先要从精灵帧缓存中取出相应的精灵帧。


 CCSptireFrame *bgSpriteFrame = [spriteFrameCache  spriteFrameByName:@"gamebg-hd.png"];   //gamebg-hd.png为plist文件中的一个精灵帧名称。


6.通过5中建立的精灵帧创建精灵。


 CCSprite *bgSprite = [CCSprite  spriteWithSpriteFrame:bgSpriteFrame];

 bgSprite.position = ccp(winSize.width/2,winSize.height/2);   //调整精灵位置。

 [batchNode  addChild:bgSprite]; //将新建立的精灵加到精灵表单中。

如想再建立一个精灵重复5 6即可。例如:

 CCSptireFrame *plantSpriteFrame = [spriteFrameCache  spriteFrameByName:@"plant.png"];

CCSprite *plantSprite = [CCSprite  spriteWithSpriteFrame:plantSpriteFrame];

 plantSprite.position = ccp(winSize.width/2+100,winSize.height/2+100);   //调整精灵位置。

 [batchNode  addChild:plantSprite]; //将新建立的精灵加到精灵表单中。


总结:


建立plist文件并添加到工程中-->建立精灵帧缓存-->将plist中的精灵帧加到精灵帧缓存中-->建立精灵表单-->从精灵帧缓存中取出精灵帧-->通过取出的精灵帧建立精灵-->把新建立的精灵添加到精灵表单中。


附言:

zwoptex是一款帮助我们建立精灵的软件,使用也很方便,可以同时生成plist和png文件。这是一个付费软件,但是网上有很多破解版,可以自行下载使用。我已在资源中上传我所使用的,有需要的可以自行下载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值