cocos2d是OC寫的灰署,cocos2dx是c++寫的
cocos2d只能在ios下運行,cocos2dx是跨平臺的辜伟,ios和android平臺都可以運行
cocos2d是外國人搞的氓侧,cocos2dx是中國人搞的脊另。
cocos2dx是cocos2d的C++寫法导狡,但是游戲架構(gòu)是一樣的,都包含了精靈偎痛,導(dǎo)演旱捧,場景,動作等概念,他們是一脈相承的東西枚赡。你可以直接研究cocos2dx氓癌,沒有什么障礙。雖然是有了cocos2d才有的cocos2dx贫橙,但是cocos2dx包含了cocos2d的主要思想贪婉,因此可以直接研究cocos2dx。
所以我們直接指導(dǎo)卢肃,結(jié)合Xcode搭建Cocos2d-X開發(fā)環(huán)境疲迂!
首先去Cocos2d-X官網(wǎng)下載安裝:http://www.cocos2d-x.org/downloadcocos2dx下載地址
最新版本是:cocos2d-x-3.13.1
打開包,是這樣的:
How to start a new game
1. Download the code from [cocos2d download site][4]
2. Run `setup.py`
3. Run the `cocos` script
Example:
$ cd cocos2d-x
$ ./setup.py
$ source FILE_TO_SAVE_SYSTEM_VARIABLE
$ cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR
$ cd NEW_PROJECTS_DIR/MyGame
一.上面的Example的第一步是$ cd cocos2d-x莫湘,在終端里進(jìn)入到你下載包的根目錄下尤蒿,我的是:cd /Users/apple/Desktop/cocos2d-x-3.13.1
二.第二步是:./setup.py ? ? ?也就是運行該文件用來配置系統(tǒng)的一些環(huán)節(jié)變量
三.cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR
3.1:MyGame:新建項目的名稱,我的是:cocos2dxTest
com.your_company.mygame:iOS下項目的包名,我的是:com.aoqic.cocos2dxTest幅垮,也就是以后你的x-code里Bundle Identifier的名字腰池,可以根據(jù)你們公司的情況填寫
3.2:-l cpp:新建項目使用的編程語言 我的是:-l cpp
3.3:-d NEW_PROJECTS_DIR:保存項目的目錄,我的是:-d /Users/apple/Desktop/cocos2dxTest忙芒,也就是你想把帶有cocos2dx的x-code項目保存到你的電腦的哪一個文件夾下面
我的:
終端過程如下圖示弓,成功后打開你的桌面文件夾:/Users/apple/Desktop/cocos2dxTest會發(fā)現(xiàn)多了一個文件夾cocos2dxTest這是x-code創(chuàng)建工程下取得項目名稱文件夾名字,打開/Users/apple/Desktop/cocos2dxTest/cocos2dxTest會多了上圖黃色箭頭指向區(qū)域的所有文件夾匕争,這就是cocos2dx的內(nèi)容避乏,打開綠色箭頭就可以打開x-code了。
我的x-code:
要選-moblie下的模擬器版本
command+r運行出現(xiàn):
好了【iOS-cocos2d-X 游戲開發(fā)之一】在Mac下結(jié)合Xcode搭建Cocos2d-X開發(fā)環(huán)境甘桑!完成了E钠ぁ!跑杭!
學(xué)習(xí)一門新的語言要慢慢學(xué)铆帽,!5铝隆爹橱!加油??
////////////////////////
2017-10-11統(tǒng)一回復(fù)更新一下,關(guān)于版本升級和安裝失敗的解決辦法
$ cd cocos2d-x
$ ./setup.py
$ source FILE_TO_SAVE_SYSTEM_VARIABLE
$ cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR
$ cd NEW_PROJECTS_DIR/MyGame
1.在官網(wǎng)下載最新版本的cocos2d-x-3.16后窄做,打開終端進(jìn)入cocos2d-x-3.16文件夾后執(zhí)行./setup.py出現(xiàn):IOError:[Errno 13] Permission denied '//.bash_profile'
1.1解決辦法:是因為權(quán)限不夠用sudo ./setup.py
若是提示Please enter the path of ANDROID_SDK_ROOT (or press Enter to skip):是讓你按enter跳過不需要ANDROID_SDK_ROOT
2.接著出現(xiàn):Please execute command: "source /Users/zhaotong/.bash_profile" to make added system variables take effect
sjhzdeMacBook-Air:cocos2d-x-3.16 zhaotong$ cocos new MyGame -p com.yjs.mygame -l cpp -d /Users/zhaotong/Desktop/1011cocosed-x
-bash: cocos: command not found
2.1解決辦法:輸入source /Users/zhaotong/.bash_profile
終于搞好了,打開桌面的MyGame工程
3.發(fā)現(xiàn)編譯時出現(xiàn)system報錯椭盏,Call to unavailable function 'system': not available on iOS
3.1解決辦法:
https://github.com/cocos2d/cocos2d-x/issues/17907
原因:XCode9 將system API刪除组砚,用 ntfw API替換,如下:
//在 #include <dirent.h>下方添加
#if (CC_TARGET_PLATFORM != CC_PLATFORM_ANDROID)
#include <ftw.h>
#endif
// ? 在 removeDirectory方法上方添加
namespace
{
#if (CC_TARGET_PLATFORM != CC_PLATFORM_ANDROID)
int unlink_cb(const char *fpath, const struct stat *sb, int typeflag,const struct stat *sb, int typeflag掏颊,
struct FTW *ftwbuf)
{
int rv = remove(fpath);
if (rv)
perror(fpath);
return rv;
}
#endif
}
//將 removeDirectory方法替換為 :
bool FileUtils::removeDirectory(const std::string& path){
#if !defined(CC_TARGET_OS_TVOS)
#if (CC_TARGET_PLATFORM != CC_PLATFORM_ANDROID)
if (nftw(path.c_str(), unlink_cb, 64, FTW_DEPTH | FTW_PHYS) == -1)
return? false;
else
return? true;
#else
std::string command = "rm -r ";
// Path may include space.
command += "\"" + path + "\"";
if (system(command.c_str()) >= 0)
return? true;
else
return? false;
#endif // (CC_TARGET_PLATFORM != CC_PLATFORM_ANDROID)
#else
return? false;
#endif // !defined(CC_TARGET_OS_TVOS)
}
最終運行成功:
修改demo:https://github.com/mrzhao12/cocos2d-X
好了【iOS-cocos2d-X 游戲開發(fā)之一】在Mac下結(jié)合Xcode搭建Cocos2d-X開發(fā)環(huán)境糟红!完成了0省!盆偿!
學(xué)習(xí)一門新的語言要慢慢學(xué)听哭,I氪恕6桶癣!加油??
////////////////////////////////////倆年后的更新/////////////////////////////////////