cocos2d-x進修筆記之CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex場景層引見。本站提示廣大學習愛好者:(cocos2d-x進修筆記之CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex場景層引見)文章只能為提供參考,不一定能成為您想要的結果。以下是cocos2d-x進修筆記之CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex場景層引見正文
圖層在cocos2d-x中很主要,我們可以在個中添加精靈,也能夠將圖層添加參預景中。這幾個圖層類功效各不雷同,詳細的看代碼的正文。年夜家只須要調換失落helloworld中的init函數便可以運轉了。
bool HelloWorld::init()
{
bool bRet = false;
do
{
CC_BREAK_IF(! <a href="http://www.jb51.net/" title="View all posts in CCLayer" class="tag_link">CCLayer</a>::init());
//CCLayerColor繼續自CCLayer,CCLayerColor有色彩,所以在create的時刻須要傳入參數,ccc4是一個宏界說,參數是r,g,b,o(o就懂得為通明值吧255表現不通明)
CCLayerColor * color = CCLayerColor::create(ccc4(255,0,0,255));
//this->addChild(color);
//CCLayerGradient繼續自CCLayerColor,它有重載的三個create函數,傳入倆個參數的時刻從第一種色彩突變到第二種色彩,偏向是從上到下突變
CCLayerGradient * gradient = CCLayerGradient::create(ccc4(255,0,0,255),ccc4(0,255,0,255));
this->addChild(gradient);
//以下是CCLayerGradient的第三個重載函數,第三個參數表現的是突變的偏向,是一個向量,這裡是ccp(1,0)固然就是從左往右突變了,假如不睬解,請參照坐標體系
CCLayerGradient * gradientT = CCLayerGradient::create(ccc4(255,0,0,255),ccc4(0,255,0,255),ccp(1,0));
//this->addChild(gradientT);
//繼續自CCLayer,可以包括多個圖層,這些圖層可以作為參數添加出去,最初以NULL停止代表圖層添加終了
//它可以治理多個層,並完成分歧層間的切換,然則統一時光只能有一個層是激活狀況,其他都是弗成見的。
CCLayerMultiplex * multiplex = CCLayerMultiplex::create(color,gradient,gradientT,NULL);
//運轉這句話的時刻請正文失落上邊的addChild函數,不然一個圖層被添加了倆次會湧現毛病的
//this->addChild(multiplex);
//默許情形下會顯示第一個圖層,應用以下的辦法可以轉變
//multiplex->switchTo(0);
//以下這句話會釋放失落圖層0,而且轉換到圖層1,但這個函數這裡不克不及應用,由於會釋放失落圖層0,而圖層0不是同過new出來的,這是cocos2d-x的內存治理機制
//multiplex->switchToAndReleaseMe(1);
bRet = true;
} while (0);
return bRet;
}