Cocos2d-x入门: 序列帧动画实现
发布时间:2020-12-14 16:21:47 所属栏目:百科 来源:网络整理
导读:cocos2d-x 2.x CCSpriteFrameCache::sharedSpriteFrameCache()-addSpriteFramesWithFile("span style="font-family: Arial,Helvetica,sans-serif;"Splash/spanspan style="font-family: Arial,sans-serif;".plist");/spanCCArray* splashFrames = CCArray::c
cocos2d-x 2.x CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("<span style="font-family: Arial,Helvetica,sans-serif;">Splash</span><span style="font-family: Arial,sans-serif;">.plist");</span> CCArray* splashFrames = CCArray::create(); for (int i=1; i<=23; i++) { const char* str = CCString::createWithFormat("Splash_%04d.png",i)->getCString(); CCSpriteFrame* frame = CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(str); splashFrames->addObject(frame); } CCAnimation *splashAnim = CCAnimation::create(); splashAnim = CCAnimation::createWithSpriteFrames(splashFrames,0.02f); CCAnimation *splashAnim = CCAnimation::createWithSpriteFrames(splashFrames,0.2); splashAnim->setLoops(1); CCAnimate *animate = CCAnimate::create(splashAnim); CCSprite* animSprite = CCSprite::createWithSpriteFrameName("<span style="font-family: Arial,sans-serif;">Splash_</span><span style="font-family: Arial,sans-serif;">0000.png");</span> animSprite->runAction(animate); 或者: CCAnimationCache* animationCache = CCAnimationCache::sharedAnimationCache(); animationCache->addAnimationsWithFile("dealer_smile_ani.plist"); CCAnimation* animation = animationCache->animationByName("dealer_smile_ani"); nimSprite->runAction(CCRepeatForever::create(CCSequence::createWithTwoActions(CCAnimate::create(animation),CCDelayTime::create(2.5f)))); Cocos2d-x 3.x Vector<SpriteFrame*> splashFrames; for (int i=1; i<=23; i++) { const char* str = CCString::createWithFormat("Splash_%04d.png",i)->getCString(); SpriteFrame* frame = cache->getSpriteFrameByName(str); splashFrames.pushBack(frame); } Animation *splashAnim = Animation::create(); splashAnim = Animation::createWithSpriteFrames(splashFrames,0.02f); 很明显,2.x与3.x的实现方式,最大的区别在于3.x用不定长的Vector来组织帧序列,相对更加灵活. 2.x的两种方式更加plist的不同类型区分:frame和animal类型。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |