这次写一下精灵创建的几种类型:
一、通过文件创建:
在原有的基础上添加如下代码:
//一、通过文件创建精灵
CCSprite *bg =CCSprite::create("map.png");
CCSize winSize =CCDirector::sharedDirector()->getWinSize(); //得到屏幕的尺寸
bg->setPosition(ccp(winSize.width/2, winSize.height/2));
this->addChild(bg);
return true;
运行:
背景图片被添加进来。。
二、通过帧创建:
//二、通过帧创建
CCSpriteFrame *frame =CCSpriteFrame::create("Peashooter1.tiff",CCRectMake(0,0,71,71));
CCSprite *plant1 =CCSprite::createWithSpriteFrame(frame);
plant1->setPosition(ccp(400,400));
this->addChild(plant1);
return true;
运行:
可以看到在屏幕的草坪上有颗豌豆。。。
三、通过纹理创建:
//三、通过纹理创建
CCImage *image =newCCImage();
image->autorelease();
image->initWithImageFile("Peashooter1.tiff");
//创建OpenGL2d纹理图像从图片、文本或原始数据
CCTexture2D *texture =newCCTexture2D();
texture->autorelease();
texture->initWithImage(image);
CCSprite *plant2 =CCSprite::createWithTexture(texture);
plant2->setPosition(ccp(500,500));
this->addChild(plant2);
return true;
可以看到背景图片上多了一个小豌豆。。
四、通过精灵帧的缓存创建精灵:
创建之前先要下载 Zwoptex 这个软件,它的作用就是将很多种图片合成一张图片和一个plist文件,打开软件点击creat
导入一些图片:
点击Layout自动布局
改变大小:点击file下面的Publish Settings 来设置输出的路径和文件名
点击Done 完成我是保存到桌面,然后将这两个文件添加到工程中去。
编写代码:
//四、通过帧缓存创建
CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("Person.plist");
CCSpriteFrame *frameCashe =CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("本.png");//创建帧
CCSprite *plant3 =CCSprite::createWithSpriteFrame(frameCashe);
plant3->setPosition(ccp(600,600));
也可以这样创建:
CCSprite *plant3 = CCSprite::createWithSpriteFrameByName("本.png");
this->addChild(plant3);
return true;
这种方式创建的精灵很常用。。。运行:
可以看到 多出来一个图片。。。 这就是精灵创建的最基本的创建方法。