忙了很久终于忙完了,有空继续研究一下 cocos2d-x,今天研究了一下动画,下面简单的实现了一下。其中也遇到几个问题,比如C++太久不用了,完全不会用了,然后就是刚下载的cocos2d-x版本用的cocos2d-x-2.1.4.zip @ June.18, 2013 版本比我之前使用的版本API修改了不少。例子虽少,不过读读源码还是难不倒我的。言归正传,下面是简单的实现了一个动画。
如图
中间的云会动,其中实现了一个循环动画。
素材
代码如下:
//1.生成动画数据
CCArray *arry=new CCArray();
CCTexture2D *texture0=CCTextureCache::sharedTextureCache()->addImage("5.png");
CCTexture2D *texture1=CCTextureCache::sharedTextureCache()->addImage("6.png");
CCSpriteFrame *frame0=CCSpriteFrame::createWithTexture(texture0, *new CCRect(0,0,texture0->getPixelsWide(),texture0->getPixelsHigh()));
CCSpriteFrame *frame1=CCSpriteFrame::createWithTexture(texture1, *new CCRect(0,0,texture1->getPixelsWide(),texture1->getPixelsHigh()));
arry->addObject(frame0);
arry->addObject(frame1);
CCAnimation *animation=CCAnimation::createWithSpriteFrames(arry,0.2f);
animation->createWithSpriteFrames(arry);
//2.初始化精灵
//CCSprite *sprite=CCSprite::createWithSpriteFrame(frame0);
CCSprite *sprite=CCSprite::create();
sprite->setPosition(ccp(s.width/2,s.height/2));
addChild(sprite,1);
//3.使用animation生成一个动画动作
CCAnimate *animate=CCAnimate::create(animation);
sprite->runAction(CCRepeatForever::create(animate->reverse()));