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; }