cocos2d-x学习笔记------动画人物跑起来吧!

学习总结:

1、sprintf用来格式化字符串

2、CCSpriteFrame:: frameWithTexture通过图片名创建的时候需要的参数Texture2D创建使用CCTextureCache::sharedTextureCache()->addImage(str)

3、CCAnimation用来装载已经缓存的图片动画资源CCAnimation *animation=CCAnimation::animationWithFrames(arrayList, 0.2f); 

4、循环动画需要使用CCRepeatForever中的actionWithAction方法

5、需要学会查询cocos2d-x的官方资料文档(查询相关类的方法如何使用):

http://cocos2d.cocoachina.com/document/index/class?url=db/dc5/classcocos2d_1_1_c_c_animate.html

 

动画核心代码:

void Player::run(){
	CCMutableArray<CCSpriteFrame*> *arrayList = new CCMutableArray<CCSpriteFrame*>(4);
	
	char str[64]={0};
	for(int i=1;i<9;i++){
		sprintf(str,"sprite/player%d.png",i);
	   arrayList->addObject(CCSpriteFrame:: frameWithTexture(CCTextureCache::sharedTextureCache()->addImage(str),CCRectMake(0, 0, 120, 134)));
	
	}

	CCAnimation *animation=CCAnimation::animationWithFrames(arrayList, 0.2f);  
	
	  CCAnimate *animate=CCAnimate::actionWithAnimation (animation);
	sprite->runAction(CCRepeatForever::actionWithAction(animate));//CCRepeatForever::actionWithAction(interval)
}

  效果图:

 

posted @ 2013-09-05 21:33  木木小强  阅读(307)  评论(0编辑  收藏  举报