auto animation = CCAnimation::create(); for(int i = 1;i < 5;i++) { char str[10] = {0}; sprintf(str,"0%d.png",i); animation->addSpriteFrameWithFile(str); } animation->setDelayPerUnit(2.5f/14.0f); //2.5秒内实现14帧的播放 animation->setRestoreOriginalFrame(true); animation->setLoops(-1); auto animate = CCAnimate::create(animation); sprite->runAction(CCRepeatForever::create(CCSequence::create(animate,NULL))); 在创建Animation实例时会用到以下几个接口: addSpriteFrame,添加精灵帧到Animation实例 setDelayUnits,设置每一帧持续时间,以秒为单位 setRestoreOriginalFrame,设置是否在动画播放结束后恢复到第一帧 文件添加: 首先我们来了解下需要用到的AnimationCache类。AnimationCache可以加载xml/plist文件,plist文件里保存了组成动画的相关信息,通过该类获取到plist文件里的动画。 auto cache = AnimationCache::getInstance(); cache->addAnimationsWithFile("animations.plist"); auto animation2 = cache->getAnimation("animation"); // 其中animation可以换成上面讲的str,str的获得和上面的方法所用相同 auto action2 = Animate::create(animation2); sprite->runAction(Sequence::create(action2, action2->reverse(), NULL));
cocos2d-x 动画
最新推荐文章于 2021-07-03 20:40:50 发布