先上代码:
在HelloWorld::init()中加入
//人物可以被视为一个精灵(sprite),它包含上、下、左、右四个方向的行走动作,如图
//将图保存,放在Resource目录下,我们先做人物向左移动一格的动画,也就是第一行的4附图
//首先将图片生成纹理,保存到全局的纹理缓存区
CCTexture2D *pHeroTexture = CCTextureCache::sharedTextureCache()->addImage("hero.png");
//然后用纹理创建4帧动画,并存放到CCArray中
CCArray *animFrames = new CCArray();
for (int i= 0;i<4; i++)
{
CCSpriteFrame * frames = CCSpriteFrame::frameWithTexture(pHeroTexture,CCRect(90*i,0,90,88));
animFrames->addObject(frames);
}
//根据4帧生成CCAnimation对象
CCAnimation *animation= new CCAnimation();
animation->initWithSpriteFrames(animFrames,0.2f); //0.2f表示每帧动画间的时间间隔
animFrames->release();
//接下来创建一格精灵,可以使Animation中的一帧来做人物静止时的画面
CCSprite *heroSprite = CCSprite::create("hero.png");
//将人物放在CCP(200,200)处
heroSprite->setPosition(ccp(200,200));
this->addChild(heroSprite);
//播放动画
CCAnimate *animate= CCAnimate::actionWithAnimation(animation);
heroSprite->runAction(CCRepeatForever::actionWithAction(animate));