【学习12】创建帧动画

用到的工具:http://pan.baidu.com/share/home?uk=185595768#category/type=0(里面有个GIF制作和生成.plist工具)

在网上找了个gif特效(最好还是自己做一个)

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.运行结果:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值