3.3.1 创建精灵常用的 4 种方式 (当然还有其他方式,只不过 这四种比较常用)
//创建精灵常用的 4 种方式 CCSprite* spr1 = CCSprite::create(const char* pszFileName); //作用:通过一张图片生成精灵对象 //参数:图片名称 CCSprite* spr2 = CCSprite::create(const char* pszFileName, const cocos2d::CCRect& rect); //作用:通过一张图片进行指定区域裁剪后,生成精灵对象 //参数 1:图片名称 //参数 2:矩形区域 CCSprite* spr3 = CCSprite::createWithSpriteFrameName(cocos2d::CCSpriteFrame* pSpriteFrame); //作用:利用帧缓存中的一帧的名称生成一个精灵对象 //参数:帧的名称 CCSprite* spr4 = CCSprite::createWithSpriteFrame(const char* pszSpriteFrameName); //作用:利用另外一帧的名称生成一个精灵对象 //参数:精灵对象 //示例代码 //First: CCSprite* spr1 = CCSprite::create("Icon.png"); spr1->setPosition(ccp(70,150)); addChild(spr1); //Second: CCSprite* spr2 = CCSprite::create("Icon.png", CCRectMake(0,0,30,30)); spr2->setPosition(ccp(150,150)); addChild(spr2); //Third: CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("test_icon.plist"); CCSprite* spr3 = CCSprite::createWithSpriteFrameName("Icon.png"); spr3->setPosition(ccp(230,150)); addChild(spr3); //Forth: CCSpriteFrame* frame = CCSpriteFrame::create("Icon.png", CCRectMake(0,0,40,30)); CCSprite* spr4 = CCSprite::createWithSpriteFrame(frame); spr4->setPosition(ccp(310,150)); addChild(spr4);
3.3.2 精灵常用函数
setPosition(const cocos2d::CCPoint &pos); setRotation(float fRotation); setScale(float fScale); setScaleX(float fScaleX); setScaleY(float fScaleY); setFlipX(bool bFlipX); setFlipY(bool bFlipY); setOpacity(GLubyte opacity); //GLubyte类型 透明度值范围【0,255】 =0(全透) =255(不透明) setVisible(bool bVisible); setAnchorPoint(const cocos2d::CCPoint &anchor); setColor(const cocos2d::ccColor3B &color3); //ccc3(r,g,b) setTexture(cocos2d:CCTexture2D *texture); //设置其贴图 //CCTexture2D创建方法 如下 CCTextureCache::sharedTextureCache()->addImage(const char *fileimage); setTextureRect(const cocos2d::CCRect &rect); //以上函数都有对应的获取函数 请自行查看 探究