这个是我自己做出来的,cocos2d创建帧动画,今天来和大家分享一下
1.将这个GIF文件用,UleadGIFAnimator打开,然后另存为图像帧,这样就将GIF转换成一组png图片了:
2.打开TexturePacker,将图片拖进右边的Sprites框路面,然后设置OutPut的Date File,最后点击上方工具栏的Publish生成:
3.将这些素材都拖进工程的Resource里面:
4.重写Init方法:
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !Layer::init() )
{
return false;
}
Size size = Director::getInstance()->getVisibleSize();
//缓存SpriteFrame对象,.plist和.png
auto cache = SpriteFrameCache::getInstance();
cache->addSpriteFramesWithFile(“D:\\hello\\Animation\\proj.win32\\res\\light.plist”,”D:\\hello\\Animation\\proj.win32\\res\\light.png”);
//创建sprite对象,同来执行runAction
auto sprite = Sprite::create();
sprite->setPosition(size.width/2,size.height/2);
addChild(sprite);
//把每帧图片放进向量里
Vector<SpriteFrame*> vec;
for (int i=1001; i<=1006; i++){
String *string = String::createWithFormat(“%d.png”,i);
SpriteFrame *spfr = cache->getSpriteFrameByName(string->getCString());
vec.pushBack(spfr);
}
//创建Animation对象
Animation *animation = Animation::createWithSpriteFrames(vec,0.1);
Animate *action = Animate::create(animation);
sprite->runAction(RepeatForever::create(action));
return true;
}5.运行结果: