cocos2d-x 简单绘制

本文使用cocos2d-2.0-x-2.0.4版本<br>

resource:

girls.png图片


mayi.png图片

//创建一个CCLabelTTF指针 来绘制字符串 它是一个自动释放对象
		CCLabelTTF* pLabel = CCLabelTTF::create("Mygame","Arial",20);
		//检测
		CC_BREAK_IF(!pLabel);
		//获取高宽,设置坐标
		CCSize size = CCDirector::sharedDirector()->getWinSize();
		pLabel->setPosition(ccp(size.width/2,size.height/2));
	    //将pLabel添加到当前创建
		this->addChild(pLabel,1);



        //创建一个CCSprite 对象的指针 绘制一张图片 它是一个自动释放的对象
		CCSprite* pSprite = CCSprite::create("mayi.png");
		//检测
		CC_BREAK_IF(!pSprite);
        //设置坐标点
		pSprite->setPosition(ccp(size.width/2,size.height/2+50));
        //将pSprite添加到当前创建
		this->addChild(pSprite,1);




        //使用cclabelttf和ccmenuitemlabel 创建文本按钮
		CCLabelTTF* pBtn = CCLabelTTF::create("LabelButton","Arial",20);
		CC_BREAK_IF(!pBtn);

        // 通过pbtn生成一个ccmenuitemlabel
		CCMenuItemLabel *pItemLabel =CCMenuItemLabel::create(pBtn);
        CC_BREAK_IF(!pItemLabel);
		pItemLabel->setPosition(ccp(size.width/2,100));

		
		//使用CCMenuItemFont创建一个文本按钮
		CCMenuItemFont* pItemFont = CCMenuItemFont::create("FontButton",this,NULL);
		//检测
		CC_BREAK_IF(!pItemFont);
		//设置坐标
		pItemFont->setPosition(ccp(size.width/2,50));



		CCMenuItemImage* pItemImage = CCMenuItemImage::create(
			"CloseNormal.png",
            "CloseSelected.png",
            this,
			NULL);
		pItemImage->setPosition(ccp(size.width-50,50));



	   //添加到menu层
		CCMenu *pMenu = CCMenu::create(pItemLabel,pItemFont,pItemImage,NULL);
        CC_BREAK_IF(!pMenu);
		pMenu->setPosition(CCPointZero);
		this->addChild(pMenu,0);


//如何生成一个动画


        //1先将图片放在项目,生成纹理
		CCTexture2D* pTexture=CCTextureCache::sharedTextureCache()->addImage("girls.png"); 
     
        //2截取每帧
		CCSpriteFrame* frame0 = CCSpriteFrame::createWithTexture(pTexture,CCRectMake(32*0,48*0,32,48));
		CCSpriteFrame* frame1 = CCSpriteFrame::createWithTexture(pTexture,CCRectMake(32*1,48*0,32,48));
		CCSpriteFrame* frame2 = CCSpriteFrame::createWithTexture(pTexture,CCRectMake(32*2,48*0,32,48));
		CCSpriteFrame* frame3 = CCSpriteFrame::createWithTexture(pTexture,CCRectMake(32*3,48*0,32,48));
	
		
		//3所有的帧放入CCArray
		//CCArray *pArray = CCArray::arrayWithCapacity(4);
		CCArray *pArray =CCArray::createWithCapacity(4);
		pArray->addObject(frame0);
		pArray->addObject(frame1);
		pArray->addObject(frame2);
		pArray->addObject(frame3);

		//4生成 动作CCAnimation
		CCAnimation* animation = CCAnimation::createWithSpriteFrames(pArray,0.5f);
        CC_BREAK_IF(!animation);


		//初始化并设置一个Sprite
		CCSprite* girlsSprite = CCSprite::create();
		CC_BREAK_IF(!girlsSprite);
		//设置坐标点
		girlsSprite->setPosition(ccp(size.width/2,size.height/2+130));
		this->addChild(girlsSprite,2);
      
		//5初始化CCAnimation(动画)生成一个CCAnimate(动作)
		CCAnimate* animate = CCAnimate::create(animation);
		CC_BREAK_IF(!animate);

		//6CCSprite绑定CCAnimate
		girlsSprite->runAction(CCRepeatForever::create(animate));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值