cocos2d-x简单的绘制(2)
来源:未知 责任编辑:责任编辑 发表时间:2013-11-18 20:56 点击:次
p>“CloseNormal.png”,
p>“CloseSelected.png”,this,NULL);
p> //参数1:未选中的图片的地址,参数2:选中后的图片的地址
p>//检查
p>CC_BREAK_IF(!pItemImage);
p>//设置坐标
p>pItemImage->setPosition(300,200);
p>//添加到Menu层
p>CCMenu *pMenu =CCMenu::create(pItemImage , NULL);
p>CC_BREAK_IF(!pMenu);
p>pMenu->setPosition(CCPointZero);
p>this->addChild(pMenu, 1);
p>
p>
p>
p>4. 如何生成一个动画
p>图片放入项目
p>1. 生成纹理CCTexture2D *t=
p>CCTextureCache::SharedTextureCache()->addImage(“图片路径”);
p>2. 截取每帧 CCSpriteFrame *f=
p>CCSpriteFrame::creat(t, CCRectMake(起点x , 起点y , 宽度 , 高度));
p>3. 所有帧放入CCArray * array = CCArray::creat(总帧数);
p>4. 生成动画 CCAnimation
p>5. 初始化CCSprite并添加到图层
p>6. 使用CCAnimation生成一个CCAnimate动作
p>7. CCSprite绑定CCAnimate
p>
p>代码实例:
p>//读取2d纹理
p>CCTexture2D * pTexture =CCTextureCache::sharedTextureCache()->addImage(“girl.png”);
p>//创建第一帧
p>CCSpriteFrame *frame0 =CCSpriteFrame::create(pTexture , CCRectMake(32*0,48*0,32,48));
p>//创建第二帧
p>CCSpriteFrame *frame1 =CCSpriteFrame::create(pTexture , CCRectMake(32*1,48*0,32, 48));
p>//创建第三帧
p>CCSpriteFrame *frame2 =CCSpriteFrame::create(pTexture , CCRectMake(32*2,48*0,32, 48));
p>//创建第四帧
p>CCSpriteFrame *frame3 =CCSpriteFrame::create(pTexture , CCRectMake(32*3,48*0,32, 48));
p>CCArray *pArray = CCArray::create(4);
p>pArray->addObject(frame0);
p>pArray->addObject(frame1);
p>pArray->addObject(frame2);
p>pArray->addObject(frame3);
p>
p>//创建动画
p>CCAnimation * animation =CCAnimation::create(pArray,0.5f); //0.5f为每附图跳转的时间间//隔
p>CC_BREAK_IF(!animation);
p>//初始化并设置一个Sprite
p>CCSprite *girlSprite = CCSprite::create(frame0); //设置精灵默认开始的动作
p>CC_BREAK_IF(!girlSprite);
p>//设置坐标位置
p>girlSprite->setPosition(ccp(size.width/2 ,size.height/2+100));
p>this->addChild(girlSprite,2);
p>//使用animation生成animate
p>CCAnimate * animate =CCAnimate::actionWithAnimation(animation); //循环播放设置
p>CC_BREAK_IF(!animate);
p>girlSprite->runAction(CCRepeatPorever::create(animate));
p>
p>
p>
p>
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 更多>>