地球人已阻止不了程序猿学习cocos2d-x个人学习笔记二
2013-09-04 20:59
561 查看
今天一下午没课,就接着开始研究cocos2d-x了,看到了动画部分,看了感觉还比较容易理解的。然后自己动手,发现不是这么回事,大牛门出教程的时候创建动画都是用的CCMutableArray<CCSpriteFrame*>对象,是以前的版本,而我使用的时候,发现这个会报错,google之后发现原来cocos官网已经把这个函数去除掉了。然后就只能自己找了,通过google和网上的一些文档,发现官网虽然剔除了这个类,但是还有一个新的类CCArray来代替他,而且用起来感觉更方便。下面贴出重要代码和demo截图
参考的教程为 http://www.cocoachina.com/gamedev/misc/2012/0528/4297.html
转载请注明出处 http://blog.csdn.net/by_mxy/article/details/11096013
参考的教程为 http://www.cocoachina.com/gamedev/misc/2012/0528/4297.html
转载请注明出处 http://blog.csdn.net/by_mxy/article/details/11096013
//批次读取图片,将所有要用到的都放到这里面,这个不懂的同学看我的前面的博客 地球已经阻止不了程序猿学习cocos2d-x 第一篇 CCSpriteFrameCache *cache =CCSpriteFrameCache::sharedSpriteFrameCache(); cache->addSpriteFramesWithFile("game.plist","game.png"); //批次读取纹理 CCTexture2D* texture = CCTextureCache::sharedTextureCache()->textureForKey("game.png"); CCSpriteBatchNode *spriteBatch =CCSpriteBatchNode::batchNodeWithTexture(texture); addChild(spriteBatch); //读取背景 CCSprite* backgroundSprite =CCSprite::spriteWithSpriteFrameName("3.png"); backgroundSprite->setPosition(ccp(size.width/2,size.height/2)); spriteBatch->addChild(backgroundSprite,0); //这个是大头 CCSprite* pSprite = CCSprite::spriteWithSpriteFrameName("1.png"); CC_BREAK_IF(!pSprite); // CCSize dim = pSprite->getContentSize(); 获取精灵的长宽 pSprite->setPosition(ccp(size.width/2.0,size.height/2.0)); spriteBatch->addChild(pSprite,0); //动画代码 //读取行走图的纹理 CCTexture2D *texture2 =CCTextureCache::sharedTextureCache()->addImage("11.png"); //通过纹理来取得每个图 CCSpriteFrame *frame0 =CCSpriteFrame::frameWithTexture(texture2,CCRectMake(34*0,48*0,34,48)); CCSpriteFrame *frame1 =CCSpriteFrame::frameWithTexture(texture2,CCRectMake(34*1,48*0,34,48)); CCSpriteFrame *frame2 =CCSpriteFrame::frameWithTexture(texture2,CCRectMake(34*2,48*0,34,48)); CCSpriteFrame *frame3 =CCSpriteFrame::frameWithTexture(texture2,CCRectMake(34*3,48*0,34,48)); //创建一个数组 CCArray* animFrames = CCArray::createWithCapacity(4); //数组中存放几张图 animFrames->addObject(frame0); animFrames->addObject(frame1); animFrames->addObject(frame2); animFrames->addObject(frame3); //创建动画。 0.5秒把图片变换一次 CCAnimation* animation = CCAnimation::createWithSpriteFrames(animFrames, 0.5f); //把一个动画放在一个CCSprite中播放,m_pSprite是第一个图像 CCSprite *m_pSprite = CCSprite::createWithTexture(texture2,CCRectMake(0,0,34,48)); //设置位置 m_pSprite->setPosition(ccp(size.width/2.0-80,size.height/2.0-80)); this->addChild(m_pSprite,0); m_pSprite->runAction( CCRepeatForever::create( CCAnimate::create(animation) ) );
相关文章推荐
- 地球人己阻止不了程序猿们学习cocos2d-x了-学习笔记02
- 地球人己阻止不了程序猿们学习cocos2d-x了-学习笔记03
- 地球人己阻止不了程序猿们学习cocos2d-x了-学习笔记04
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第一篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第三篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第四篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第五篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第六篇)
- cocos2d-x 【小菜在学习】锚点与位置个人理解笔记
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第二篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了-学习笔记01
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第一篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第一篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第二篇)
- 地球人己阻止不了程序猿们学习cocos2d-x了 (第三篇)
- Cocos2d-x学习笔记之动画的处理
- 个人学习笔记5之--子查询与表表达式
- dwz 个人学习笔记(一)入门
- 个人思科学习笔记总结