加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2dx帧动画

发布时间:2020-12-14 20:43:39 所属栏目:百科 来源:网络整理
导读:学习cocos2dx中,看到有游戏蛮牛的教程,但是因为版本的不同可能出现一些错误,现在把我学习的过程记录下,希望对新人有帮助吧! cocos2dx为3.4版本,VS2013 贴代码如下: bool HelloWorld::init(){ if ( !Layer::init() ) { return false; } auto size = CC

学习cocos2dx中,看到有游戏蛮牛的教程,但是因为版本的不同可能出现一些错误,现在把我学习的过程记录下,希望对新人有帮助吧!

cocos2dx为3.4版本,VS2013

贴代码如下:

bool HelloWorld::init()
{
    if ( !Layer::init() )
    {
        return false;
    }
    auto size = CCDirector::sharedDirector()->getWinSize();//获取屏幕大小
	//创建缓存帧
	CCSpriteFrameCache*cache = CCSpriteFrameCache::getInstance();
	//添加缓存文件到缓存对象chache中
	cache->addSpriteFramesWithFile("kkk.plist");	

    CCSprite*sp = CCSprite::create("b_01.png");//第一帧作为起始精灵
	sp->setPosition(ccp(size.width/2,size.height/2));//位置
	addChild(sp);//显示

	Vector<cocos2d::SpriteFrame *> arr;//创建此类型的数组
	char str[50] = { 0 };
	for (int i = 1; i < 15; i++)
	{
		sprintf(str,"b_%02d.png",i);
		CCSpriteFrame*frame =cache->spriteFrameByName(str);
		arr.pushBack(frame);		
	}
	CCAnimation*animation = CCAnimation::createWithSpriteFrames(arr,0.2f);
	sp->runAction(CCRepeatForever::create(CCAnimate::create(animation)));

    return true;
}


其中可能是版本的原因,原蛮牛游戏的教程创建数组arr用的是CCArry创建,后来发现不行,又七搞八搞的

用Vector<cocos2d::SpriteFrame*>arr创建之后才不报错!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读