码迷,mamicode.com
首页 > 其他好文 > 详细

Cocos2d-x入门: 序列帧动画实现

时间:2015-08-04 11:19:03      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:cocos2d-x入门 序列帧动画实现   cocos2d-x入门   createwithspritefram   独立开发者er   

cocos2d-x 2.x   
CCArray* splashFrames = CCArray::createWithCapacity(16);
    for (int i=1; i<=23; i++) {

        const char* str = CCString::createWithFormat("Splash_%04d.png",i)->getCString();
        CCSpriteFrame* frame = cache->spriteFrameByName(str);
        splashFrames->addObject(frame);
        
    }
    CCAnimation *splashAnim = CCAnimation::create();

    splashAnim = CCAnimation::createWithSpriteFrames(splashFrames, 0.02f);

或者:
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来组织帧序列,相对更加灵活

版权声明:本文为博主原创文章,未经博主允许不得转载。

Cocos2d-x入门: 序列帧动画实现

标签:cocos2d-x入门 序列帧动画实现   cocos2d-x入门   createwithspritefram   独立开发者er   

原文地址:http://blog.csdn.net/chenqiai0/article/details/47272573

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!