91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[cocos2d-x]cocos2dx與cocos2d的一些變化

發布時間:2020-04-07 14:37:26 來源:網絡 閱讀:235 作者:蓬萊仙羽 欄目:游戲開發

cocos2dx v2.0版本發布一段時間了,現在最新版本是 cocos2d-2.0-rc2-x-2.0.1 ;這段時間Himi對2.x的更新版也有關注,也嘗試使用過,發現不少地方都有改動,對于Himi最新項目快到尾聲的考慮,所以也沒有更新引擎到最新。那么今天開始Himi將陸續使用最新v2.x版本的一些東東,同步更新一些經常使用的改動以及值得注意的地方發博文出來與大家共享;

在之前我們使用cocos2dx 1.x版本中,我們都知道,創建一個CCObject類,都是類名然后::類名去除CC這個規律來創建和初始化,但是這一條在Cocos2dx 2.x版本就不行了,在cocos2dx  2.x版本中初始化和創建類基本都是 create 關鍵字開頭創建。

首先我們來看第一個改動:  CCLayer初始化

自定義Layer,類名:World

1
2
3
4
5
6
.h中:
1.x版本Layer函數
LAYER_NODE_FUNC(World);
 
2.x版本Layer函數
LAYER_CREATE_FUNC(World);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
.cpp中:
1.x版本的重寫函數:
 
CCScene* World::scene()
{
    CCScene *scene = CCScene::node();
    World *layer = World::node();
    scene->addChild(layer);
    return scene;
}
 
2.x版本的重寫函數:
 
CCScene* World::scene()
{
    CCScene *scene = CCScene::create();
    World *layer = World::create();
    scene->addChild(layer);
    return scene;
}

 

然后我們看第二個常用的CCArray的初始化:

1
2
3
4
5
1.x版本的CCArray創建:
CCArray*array = CCArray::array();
 
2.x版本的CCArray創建: 
CCArray*array = CCArray::create();

 

 

第三個我們看文件路徑相關CCFileUtils函數使用:

[cpp] view plaincopy
  1. 1.x版本的使用:   
  2. const char* fullpath = cocos2d::CCFileUtils::fullPathFromRelativePath(patha.c_str());  
  3.    
  4. 2.x版本的使用:  
  5. const char* fullpath = cocos2d::CCFileUtils::sharedFileUtils()->fullPathFromRelativePath(patha.c_str());  



第四個精靈的創建:  

[cpp] view plaincopy
  1. 1.x中精靈的創建:  
  2.  CCSprite *sp = CCSprite::spriteWithFile("himi.png");  
  3. 2.x中精靈的創建:  
  4.  CCSprite *sp = CCSprite::create("himi.png");  



第五個注冊觸屏事件監聽

[cpp] view plaincopy
  1. 1.x中注冊:  
  2. CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this, 0, false);  
  3.    
  4. 2.x中注冊:  
  5. CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, false);  


第六個粒子相關

[cpp] view plaincopy
  1. 1.x粒子創建和設置自動釋放設置  
  2. CCParticleSystem *tempSystem =  CCParticleSystem::particleWithFile("himi.plist");  
  3.         tempSystem->setIsAutoRemoveOnFinish(true);  
  4.            
  5. 2.x粒子創建和設置自動釋放設置          
  6. CCParticleSystem *tempSystem =  CCParticleSystemQuad::create("himi.plist");  
  7.         tempSystem->setAutoRemoveOnFinish(true);<span style="color:#ff0000;">  
  8. </span>  



第七個:CCFileData 類去除了:

[cpp] view plaincopy
  1. 1.x的CCFileData的使用:  
  2.         
  3. cocos2d::CCFileData fileDataClip(const char *pszFileName, const char *pszMode);  
  4.     
  5. 2.x中CCFileData被刪除,直接使用如下函數即可代替:  
  6. CCFileUtils::sharedFileUtils()->getFileData(const char *pszFileName, const char *pszMode, unsigned long *pSize)  


第八個 Action 動作使用與創建:

[cpp] view plaincopy
  1. 1.x動作的創建與使用:  
  2. this->runAction(CCSequence::actions(  
  3.                                             CCMoveTo::actionWithDuration(ccpDistance(this->getPosition(), target) / velocity,  
  4.                                                                          target),  
  5.                                             CCCallFunc::actionWithTarget(this, callfunc_selector(Player::removeTarget))  
  6.                                             ,NULL));  
  7.     
  8. 2.x的動作創建和使用:        
  9. this->runAction(CCSequence::create(  
  10.                                            CCMoveTo::create(ccpDistance(this->getPosition(), target) / velocity,  
  11.                                                             target),  
  12.                                            CCCallFunc::create(this, callfunc_selector(Player::removeTarget))  
  13.                                            ,NULL));  


其實以上這幾個例子比較有代表性了,其他的一些區分我想大家也能找到不一定的規律。那么本篇對于cocos2dx v2.0版本的差異就講述到這,后續如果Himi還發現比較重點區分的地方也一定會博文分享出來的。   [cocos2d-x]cocos2dx與cocos2d的一些變化


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜平县| 永靖县| 沧源| 霞浦县| 余姚市| 龙口市| 遂昌县| 东丽区| 西充县| 长岛县| 达日县| 易门县| 贵州省| 集安市| 马关县| 蕲春县| 鹿泉市| 阳东县| 古浪县| 张家口市| 会泽县| 化德县| 卫辉市| 通海县| 柞水县| 平谷区| 涿州市| 通化市| 龙南县| 瑞昌市| 同江市| 桐乡市| 东乡| 德江县| 新蔡县| 苏尼特左旗| 达日县| 永平县| 临江市| 黔江区| 肃宁县|