动画

生产动画步骤:

1、获取数据(获取图片,获取每帧,存储在数组中,组成动画)

2、用动画生成动画动作

3、创建精灵,将动画动作放到精灵中


代码:

        CCSize s = CCDirector::sharedDirector()->getWinSize(); 

        //#1:获取图片 获取每帧图片
        CCTexture2D *pTexture = CCTextureCache::sharedTextureCache()->addImage("122458972.png"); 
        CC_BREAK_IF(! pTexture);
        CCSpriteFrame *pFrame0 = CCSpriteFrame::createWithTexture(pTexture, CCRectMake(32*0, 48*0, 32, 48)); 
        CCSpriteFrame *pFrame1 = CCSpriteFrame::createWithTexture(pTexture, CCRectMake(32*1, 48*0, 32, 48)); 
        CCSpriteFrame *pFrame2 = CCSpriteFrame::createWithTexture(pTexture, CCRectMake(32*2, 48*0, 32, 48)); 
        CCSpriteFrame *pFrame3 = CCSpriteFrame::createWithTexture(pTexture, CCRectMake(32*3, 48*0, 32, 48)); 
        CC_BREAK_IF(! pFrame0);
        CC_BREAK_IF(! pFrame1);
        CC_BREAK_IF(! pFrame2);
        CC_BREAK_IF(! pFrame3);

        //#2: 将每帧图片放到数组中
        CCArray *pArrayFrame = CCArray::createWithCapacity(4); 
        CC_BREAK_IF(! pArrayFrame);
        pArrayFrame->addObject(pFrame0); 
        pArrayFrame->addObject(pFrame1); 
        pArrayFrame->addObject(pFrame2); 
        pArrayFrame->addObject(pFrame3); 

        //#3: 组成动画
        CCAnimation *pAnimation = CCAnimation::createWithSpriteFrames(pArrayFrame, 0.2f); 
        CC_BREAK_IF(! pAnimation);

        //#4:用动画生成动画动作
        CCAnimate *pAnimate = CCAnimate::actionWithAnimation(pAnimation); 
        CC_BREAK_IF(! pAnimate);

        //#5:建精灵,将动画动作放到精灵中
        CCSprite *pSprite = CCSprite::createWithSpriteFrame(pFrame0);//设置一个初始frame 
        CC_BREAK_IF(! pSprite);
        pSprite->setPosition( ccp(s.width/2, s.height/2) ); 
        pSprite->runAction(CCRepeatForever::create(pAnimate));//重复播放 
        this->addChild(pSprite, 2); 






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值