精靈是游戲中十分重要的組成部分,隨處可見,如:游戲背景、NPC、人物、道具等。在cocos2d-x引擎中,只要是用圖片展示的,基本上需要使用精靈類。
1. 首先來了解一下跟精靈相關的幾個類:
(1) CCTexture2D
可以把它看成一個紋理,它是cocos2d-x渲染圖形的重要參數,用來貼圖,因為cocos2d-x使用opengl es繪制2d圖形的,它的尺寸是2的n次方。一般通過以下方式獲得:
1 | CCTexture2D* cache = CCTextureCache::sharedTextureCache()->addImage( "hero.png" ); |
(2) CCSprite
這個就是精靈類,是CCNode的子類,它的內部封裝了CCTexture2D(紋理),可以通過下面幾種方式初始化精靈對象。
1 2 3 4 5 6 7 8 9 10 11 12 | //CCTexture2D表示精靈包含的圖片,范圍是整張圖片 static CCSprite* spriteWithTexture(CCTexture2D *pTexture); //CCRect表示圖片的指定范圍,即從圖片的指定矩形區域裁剪 static CCSprite* spriteWithTexture(CCTexture2D *pTexture, const CCRect& rect); //CCSpriteFrame表示精靈的某一幀,大多數情況下精靈本身的圖片有多幀。它內部封裝了CCTexture2D和CCRect,可以從一個大圖片取出一部分作為一幀。 static CCSprite* spriteWithSpriteFrame(CCSpriteFrame *pSpriteFrame); //pszSpriteFrameName表示幀的名字,根據幀名從內存中取出CCSpriteFrame static
|