本站文章均為 李華明Himi 原創,轉載務必在明顯處註明:
轉載自【黑米GameDev街區】 原文連結: http://www.himigame.com/iphone-cocos2dx/603.html
可能很多童鞋有點疑惑-。 -昨天剛寫了如何搭建Cocos2d-X開發環境,這一篇就開始總結了。。。。。
不得不說要說總結,因為Cocos2d-X的代碼和Cocos2d-iphone兩個引擎除了語言不同外(Cocos2d-X使用C++,Cocos2d-iphone使用Object-C)可以說沒有其他差異=。 =
下面Himi舉例對比幾段代碼來說明吧:
建立添加一個精靈代碼對比:
使用Cocos2d-X:
//---------Cocos2d-X代碼部分-- //建立一個精靈 CCSprite *spriteTemp =CCSprite::spriteWithFile("icon.png"); //設定精靈的座標 spriteTemp->setPosition(ccp(size.width*0.5,size.height*0.5)); //將精靈添加到layer中 this->addChild(spriteTemp,1);
使用Cocos2d-iphone:
//---------Cocos2d-iphone代碼部分-- //建立一個精靈 CCSprite *spriteTemp =[CCSprite spriteWithFile:@"icon.png"]; //設定精靈的座標 spriteTemp.position=ccp(size.width*0.5,size.height*0.5); //將精靈添加到layer中 [self addChild:spriteTemp z:0 tag:1];
添加一個粒子代碼對比:
使用Cocos2d-X:
//---------Cocos2d-X代碼部分-- CCParticleSystem *tempSystem =ARCH_OPTIMAL_PARTICLE_SYSTEM::particleWithFile("himi.plist"); tempSystem->setPosition(ccp(100,100)); this->addChild(tempSystem);
使用Cocos2d-iphone:
//---------Cocos2d-iphone代碼部分-- CCParticleSystem *tempSystem =[ARCH_OPTIMAL_PARTICLE_SYSTEM particleWithFile:@"himi.plist"]; tempSystem.position=ccp(100,100); [self addChild:tempSystem];
OK,不在舉例了,通過以上隨便舉例的兩段代碼童鞋們很清楚的看出來,基本上沒有差異。。So~這也是Himi沒有在更新Cocos2d-X博文的必要,以後主要會繼續更新Cocos2d(Cocos2d-iphone)博文的,以後童鞋們不管是做Cocos2d-X還是做Cocos2d-iphone都可以看我的【iOS-Cocos2d遊戲開發系列博文的】誰讓它們通用呢 =。 =
這裡還有三點要說下:
第一:現在很多遊戲公司都趨向於Cocos2d-X引擎開發遊戲的趨勢,不得不說Cocos2d-X多平台平移確實很誘惑人,而且通過網龍《91部落》手機網遊的成功發布,不得不說Cocos2d-X已成熟!
第二:不少童鞋肯定會很想知道Cocos2d-X能多平台平移,那麼平移穩定性如何?
通過Himi的瞭解,Cocos2d-X開發都會使用統一的C++語言開發,例如在iOS開發中使用Xcode+cocos2d-X,在Android上一般使用Eclipse+Android NDK+ADT....
其實總結一句,Cocos2d-iphone並不像很多童鞋認為的只要的一人開發就可打包多平台包這樣子~ 如果說用一句話更貼切的形容Cocos2d-X,Himi會用“Cocos2d-X代碼通用”來形容;
從CC(CocoChina)上我看到王哲walzer(cocos2d-x 遊戲引擎作者)在回複一童鞋問題時候這麼說的:
問:關於如何打包cocos2d-x程式的問題 本人新手,想請教一下如何將Cocos2d-x win32的程式打包成iphone能夠啟動並執行程式,請各位大大不吝賜教!謝謝!
王哲walzer 答:win32上只是讓你調試方便,要發布到appstore上,你還是得有個mac機,裝好cocos2d-x template,建立工程,然後把win32上代碼拷過來,手工地加入xcode工程裡面,編譯運行
從上面的對話可以證實Himi所說的Cocos2d-X是代碼通用! OK,不多說了,大概就說這幾點吧,繼續忙了~