㈠ cocos2dx 3.3怎麼安裝
首先下載最新版的Cocos2dx,截止到我寫這篇博客的時候,官網已經發布了3.3-Rc0版本,下載,解壓到某一目錄。我這里解壓到了
D:\cocos2d-x-3.3rc0,如果你想先學習Cocos2dx,不著急發布到Android或者Ios平台的話,到此就可以打開
cocos2d-x-3.3rc0\build\cocos2d-win32.vc2012.sln,然後生成解決方案,就可以看到官網提供的
HelloWorld以及其他效果的演示了。編譯生成的過程比較長,二,新建cocos2dx項目,
新建cocos2dx項目,需要用到Python,進入Python官網,發現Python有3.x與
2.x兩種版本,在我看到的諸多安裝過程中,都是推薦使用2.x版本進行安裝的,所以這里我下載了python2.7.8,安裝,並配置環境變數,添加
Python安裝目錄C:\Python27到Path中。
命令行打到D:\cocos2d-x-3.3rc0中,輸入命令cocos new -l cpp -p xxx.xxx.xxx -d D:\CocosProject ,就可以發現在目錄D:\CocosProject下已經創建一個新項目了。
㈡ cocos2dx3.10 怎麼運行cocos2dx庫
一、通用准備工作
1、安裝Cocos2d-x 3.1
在Cocos2d官網上下載 Cocos2d-x 3.2+引擎 ,下載後解壓縮。
2、安裝Eclipse與Android SDK
這個在Mac上或是PC上開發都是可以通用的。
Eclipse 在其官網下載( 官網地址 )。
Android SDK 在Android開發者中心下載( 地址 )。
Eclipse是開發Android需要用到的IDE。這是個很牛的IDE,有許多插件讓他變得三頭六臂。要開發Android的程序,需要下載相關的插件,但如果每個插件要自己配置,會是很蛋痛的事情。
如果是新手,推薦使用:ADT Bundle。這是Eclipse+Android SDK的合體,所有的項目都已經幫你配置好了。
3、安裝JDK
Eclipse需要java環境才能運行。如果事先沒有安裝Java環境,則會報錯。
解決方案安裝jdk( 下載地址 )。
一般來說安裝之後會自動配置好環境變數。如果還沒有解決問題,請查找網路上關於JDK安裝的攻略,很多的。
4、安裝CDT插件 ( 下載地址 )
這是個Eclipse的插件,用來支持Eclipse中C/C++語言的開發。
從Eclipse的官網下載,下載之後,將features和plusins這兩個文件夾裡面的內容復制到Ecplise安裝目錄下對應的文件夾之後就可以了。
5、安裝NDK ( 下載地址 )
這是進行C/C++與Java混合編譯的必要工具。記下下載之後解壓到的目錄,因為到之後的安裝中會用到。
6、安裝ANT ( 下載地址 )
Cocos的Android開發需要用到它,所以下載下來安裝好吧。
二、PC環境下配置過程
1、安裝VS2012 ( 官方地址 )
網上還有很多其他下載地址。
最好是2012,我曾經試過2010,2013,都會出這樣那樣的問題。所以,2012!
2、安裝python 2.7.6 ( 下載地址 )
因為Cocos2d-x的安裝程序是用phthon寫的,所以需要這個軟體。不要下載python3.0以上的版本,否則運行會出錯。如果是Mac,那麼天生就自帶了。
3、進行開發環境配置
以上的工作完成之後,就可以進行配置了。啟動Windows的命令行(CMD)工具。進入Cocos2d-x 3.1的安裝目錄,執行:
python setup.py
Cocos2d-x 3.1版本使用這個setup.py來安裝,十分方便。執行之後會讓你配置上面准備工作中所安裝的:ANT、NDK、SDK等目錄,把安裝到哪兒去了填寫進入就行。
4、建立自己的項目
用setup.py配置好Cocos2d-x的環境之後,你的命令行中就會多如「cocos」的命令,新建項目將使用這個命令進行。示例:
cocos new hello(項目名稱)-p com.hello(包名字)-l cpp(項目類型) -d E:\MyCocos\cocos2d(目錄)
新建的項目會把所有的源文件和庫都拷到你的項目目錄中。所以新建的項目文件會很大,有許多人懷疑這個的必要性,不過到你之後的開發中就會知道這種配置方法是對的了。
項目建立好之後,就可以開發了:
A、進行VS2012的開發。
找到你的項目目錄下的:proj.win32,打開裡面的解決方案就行。剩下的就是你的任務了。一般來說,直接就可以運行。
B、進行Android的開發。
使用Eclipse中的項目導入,導入proj.android中的項目方案。導入之後,因為SDK的問題,一般無法啟動,關於這個問題,以及其它的問題,請參見(四、其它問題解決方案)。
三、MAC環境下配置過程
1、注冊蘋果開發者賬號 ( 注冊地址 )
如果不使用真機,使用模擬器調試,那麼有開發者賬號應該就足夠了。
如果要使用真機調試,需要購買IOS開發者會員,688RMB一年。我看到之前的攻略說要99美元,但是看現在的頁面的的提示,應該只要有網銀就可以支付了。網上的攻略寫得非常復雜,說要下載證書什麼什麼的,現在統統都不需要了,XCode全部為您代勞了,只要照提示一路點同意就行。
2、安裝XCode
在你的開發者首頁下面就有XCode的下載。通過App Store下載安裝即可。
請使用最新的XCode(需要OS X 10.8以上系統支持),並使用App Store安裝。我的MacBook Air從朋友那裡拿來時還是10.7,因為下載總是中斷,屢次不成功,所以用XCode 4.6,但好像不通過App Store安裝會出這樣那樣的問題。所以強烈推薦使用最新的版本。
3、進行開發者環境配置。
與PC的配置一樣,打開MAC的終端程序,執行setup.py,配置好各種SDK的路徑就行。但MAC需要再加上一句:
source /Users/yourname/.bash_profile
這是用來刷新配置文件的。
4、建立項目文件
使用命令行建立。
如果你像我一樣用兩個平台(PC與MAC)開發,可以共享同一個項目目錄。我的項目文件是放在PC上的,MAC通過共享訪問項目文件。
項目建立好之後就可以開發了。MAC下的配置相對簡單,使用XCode打開項目目錄下的proj.ios_mac下的項目配置文件就行。之後基本不會出錯的。
四、其它問題解決方案
Eclipse與Android相關:
問題 :SDK錯誤
因為Cocos2d-x的模版默認是使用Android 2.3.3(API-10),如果新安裝的ADT Bundle或Android SDK,是API-19,則會出現錯誤,解決方案是通過Android SDK中的管理工具(SDK Manager)下載Android 2.3.3的SDK。
問題 :Project 'XXX' is missing required source folder: 'gen'
這個問題就是上面的SDK錯誤導致的。
問題 :undefined reference to 'cocos2d::network::HttpClient::getInstance()'
我是使用網路庫(network)的時候出現這個錯誤的。如果你使用其它庫,解決方案是一樣的。原因是缺少庫的引用。解決方案是在Android.mk裡面增加:
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static
Cocos2d-x的開發者已經在Android.mk裡面加上了很多這種路徑,平時是注釋掉的。您要使用時把這些增加上去就行。
問題 :fatal error: cocos-ext.h: No such file or directory
問題分析:缺少頭文件路徑的引用
需要在:Android.mk裡面增加
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../cocos2d/extensions
Cocos2d-x的開發者已經在Android.mk裡面加上了很多這種路徑,平時是注釋掉的。您要使用時把這些增加上去就行。
問題 :The import org.cocos2dx.lib cannot be resolved。
無法找到指定的庫文件。解決的方案是增加路徑的引用:Project Properties -> Java Build Path -> Source and then linking 「項目目錄/cocos/platform/android/java/src」
VS2012相關:
問題 :「extensions/ExtensionMacros.h」: No such file or directory
無法打開包括文件。
1、解決方案中,添加「現有項目」--> libExtensions 具體目錄: ..\cocos2d\extensions\proj.win32\libExtensions.vcxproj
2、項目中添加引用-->libExtensions
3、通過:屬性->C/C++->附加包含目錄。附加包含目錄:$(EngineRoot)
如果你使用其它的文件,解決方案是一樣的。1、增加項目的引用。2、附加頭文件的包含目錄。
當遇到COCOS2DX 3.2+版本創建許可權問題時:
首先,打開終端cd到目錄 /cocos2d-x-3.2/tools/cocos2d-console/bin 下, 運行 cocos.py 腳本創建文件。
[javascript] view plain
./cocos.py new HelloWorldDemo -p com.coco2dx.org -l cpp -d ~/Desktop
參數說明:
HelloWorldDemo為項目名稱
-p 後面接包名
-l 後面接開發語言類型,有cpp, lua, js三種類型
-d 後面接項目存放的目錄
如果出現 -bash: ./cocos.py: Permission denied ,是因為沒有許可權。 用命令 chmod 修改一下目錄下的 cocos.py 許可權就可以了
[cpp] view plain
chmod u+x cocos.py
㈢ android cocos2d x 怎麼創建地圖
對於這一教程,你需要安裝最新的Cocos2D-X版本(游戲邦註:在寫本篇教程的時候更新到2.1.4)。如果你還未擁有最新版本的Cocos2D-X,先下載它並在終端運行如下命令去安裝模版:
cd ~/Downloads/cocos2d-x-2.1.4 ./install-templates-xcode.sh -f -u 然後使用iOScocos2d-xcocos2dx模版在Xcode創造一個新項目。點擊Next,將項目命名為TileGame,將項目設置為Universal,點擊Next然後點擊Create。
你將在這一項目中使用ARC,所以如果這是你第一次聽到ARC,我會鼓勵你先了解下它。模版並不是默認使用ARC,但幸運的是,我們能夠輕松地進行 修改。前往EditRefactorConvert to Objective-C ARC。往下拉並只選擇文件main.m, AppDelegate.cpp, HelloWorldScene.cpp,然後點擊Check並完成向導的步驟。
select targets(from raywenderlich)
創建並運行,然後確保一切都還正常運行—-你應該能夠看到標準的「你好世界」屏幕。
接下來下載游戲資源的壓縮文件。壓縮文件包含如下內容:
你將面向玩家對象使用的精靈。
一些伴隨著cfxr效用所創造的音效(你將會在教程中用到)。
一些伴隨著Garage Band所創造的背景音樂。
你將用到的一些磚塊設置—-這將伴隨著你將使用的地圖編輯器,但我認為我們能夠更輕松地將其與其它內容包含在一起。
一些額外的「特別」磚塊,將在之後進行詳細解釋。
當你下載了資源後,打開它並將TileGameResources文件夾拖到項目的Resources群組中。在項目菜單里,右擊 Resources群組,並選擇Add Files to 「TileGame」…選擇Resources/TileGameResources文件夾,核實選中了Copy items into destination group』s folder (if needed)以及Create groups for any added folders,然後點擊完成。
如果一切順利的畫,所有的文件都將出現在你的項目中。
tile game(from raywenderlich)
現在我們將開始創造地圖!
創造地圖
Cocos2D-X支持基於開放源Tiled Map Editor去創造地圖並將其以TMX格式進行保存。
下載Tiled Map Editor。在編寫本篇教程的時候,其最新版本是0.9.0。
然後運行Tiled,前往FileNew,並如下填寫對話內容:
new tileset(from raywenderlich)
為了獲得圖像,點擊Browse並導航至你自己的TileGame/Resources/TileGameResources文件夾,然後選擇你之前從資源壓縮中下載的tmw_desert_spacing.png文件,並將其添加到項目中。它將自動根據文件名填寫名字。
你可以將寬度和高度設置為32×32,因為這也是磚塊的大小。對於邊緣和間隔:
邊緣是關於在Tiled開始尋找真正的磚塊像素前應該為當前的磚塊略過多少多少像素(包括寬度和高度)。
間隔是關於Tiled在明確了實際磚塊像素並轉向下一個磚塊數據之後應該前進多少像素(包括寬度和高度)。
如果你著眼於tmw_desert_spacing.png,你將發現每個磚塊都圍繞著一個1像素的黑色邊緣,這也解釋了邊緣和間隔為1的設置。
tile(from raywenderlich)
當你點擊OK時,你將看到磚塊呈現在Tilesets窗口中。現在你可以開始繪制了。點擊工具欄的Stamp
Brush圖標,然後點擊地圖上的任何一個位置去放置一個磚塊。
tileset(from raywenderlich)
所以繼續繪制地圖—-盡可能發揮創造性!確保添加至少一些建築到地圖上,因為你在之後將需要一些碰撞內容。
tileset(from raywenderlich)
為了更輕松地繪制內容,你可以著眼於一些快捷方法。以下是最常用到的一些方法:
你可以在Tileset選擇器中圍繞著一系列磚塊拖曳一個盒子,並同時放下多個相鄰的磚塊。
你可以通過Viewoom In和Viewoom Out進行放大和縮小。
z鍵將在基於Stamp Brush工具編輯地圖時進行旋轉。
在一些新功能中你可能會注意到Mini-map。這是一個很棒的功能,它讓你能夠看到一個迷你地圖!著眼於我在Mini-map最下方的迷宮中的糟糕嘗試。紅色盒子代表你在主要編輯窗口中看到的區域。
tileset(from raywenderlich)
當你在閱讀下一個區域中的滾動時牢牢記住這一Mini-map視圖。
需要注意的是這一教程的資源是出現在地圖前的——所以如果你很懶的話便可以直接利用它。如果你這么做,你應該在Tiled打開地圖並明確它是如何設置的。
當你完成地圖的繪制時,在Layers視圖中雙擊Tile
Layer,將名字改為Background。然後點擊FileSave,並將文件保存到TileGame項目中的TileGame
ResourcesTileGameResources,將文件命名為TileMap.tmx,並覆蓋現有的文件。
你將在之後使用Tiled做其它事,但是現在讓我們將這一地圖帶進游戲中!
添加Tiled地圖到Cocos2D-X場景中
打開HelloWorldScene.h,在#include 「cocos2d.h」之後添加如下內容:
usingnamespacecocos2d;
這能指導編輯器去使用cocos2d命名空間,所以你不需要為所有內容加上cocos2d的前綴。
然後添加以下內容到類定義中,即在花括弧之後:
private:CCTMXTiledMap*_tileMap;CCTMXLayer*_background;
這創造了一個實例變數去追蹤磚塊地圖本身,並創造了另一個實例變數去追蹤地圖的背景層。你將在之後學到更多有關磚塊地圖層面的內容。
接下來,用如下內容換掉HelloWorldScene.cpp:
CCTMXObjectGroup*objectGroup=_tileMap->objectGroupNamed(「Objects」);if(objectGroup==NULL){CCLog(「」);returnfalse;}CCDictionary*spawnPoint=objectGroup->objectNamed(「SpawnPoint」);intx=((CCString)*spawnPoint->valueForKey(「x」)).intValue();inty=((CCString)*spawnPoint->valueForKey(「y」)).intValue();_player=newCCSprite();_player->initWithFile(「Player.png」);_player->setPosition(ccp(x,y));this->addChild(_player);this->setViewPointCenter(_player->getPosition());
最後一行有個預兆——但不要擔心,你很快就能到達那裡。
讓我們暫停一會並解釋對象層面和對象群組。首先注意你是通過在CCTMXTiledMap對象中(而不是layerNamed)通過objectGroupNamed方法檢索對象層面。它返回了一個特殊的CCTMXObjectGroup對象。
然後objectGroup調用了objectNamed方法去獲得一個CCDictionary,並包含了一些有關對象的有用信息,如x和y軸,寬度和高度。在教程的這一部分,你需要關心的便是x和y軸,將其設置為玩家精靈的位置。
在代碼塊的最後你設置了視圖去明確玩家的位置。所以現在添加如下內容到HelloWorldScene.h中:
//(CCPointposition);
並添加一個新方法到HelloWorldScene.cpp(在文件的最下方最好):
voidHelloWorld::setViewPointCenter(CCPointposition){CCSizewinSize=CCDirector::sharedDirector()->getWinSize();intx=MAX(position.x,winSize.width/2);inty=MAX(position.y,winSize.height/2);x=MIN(x,(_tileMap->getMapSize().width*this->_tileMap->getTileSize().width)–winSize.width/2);y=MIN(y,(_tileMap->getMapSize().height*_tileMap->getTileSize().height)–winSize.height/2);CCPointactualPosition=ccp(x,y);CCPointcenterOfView=ccp(winSize.width/2,winSize.height/2);CCPointviewPoint=ccpSub(centerOfView,actualPosition);this->setPosition(viewPoint);}
這是關於磚塊的解釋。想像這一函數設置了攝像機的中心位置。它讓用戶能夠進入地圖中x,y軸的任何位置—-但是你有可能不想呈現出某些點,如你可能不想要屏幕超過地圖的邊緣(那麼它便只會呈現出黑邊!)。
㈣ 有多個版本cocos2dx,cocos new 如何指定版本
1、基本准備
(1)安裝Python,注意要使用2.7.x版本,不能用3.0版本,最後注意安裝後還要配置一下系統變數(這個不多說,晚上一搜一大把)。
(2)下載 cocos2dx ,版本無要求,2.x 或者 3.0 都可以,這里採用最新的 cocos2d-x 3.0rc1版本。
(3)安裝VS2012,建議只需安裝一個 c++ 的開發環境就可以了,其它選項可以勾掉。
2、創建 cocos2d-x 3.0 rc1 項目過程
進入:cocos2d-x-3.0rc1\tools\cocos2d-console\bin 目錄,用其中的 cocos.py 進行項目創建
可以輸入 cocos.py new --help 顯示些提示信息。
那麼創建的時候一般只需要指定: 項目名稱 ,package 名稱 ,語言 ,保存路徑就可以了,例如:
這樣就創建了一個項目 MyFirstGame 到 E:\Cocos2d-x\Projects 路徑下。
打開這個項目 MyFirstGame\proj.win32 目錄,打開 sln 文件,這樣就可以了。
3、配置 VS2012
(1)字體設置
選擇菜單欄中的 工具 --》 選項 ;在 Environment 中選擇 字體和顏色 ,然後改變字體為 Consolas (個人覺得這個字體好舒服,好好看)。
(2)其他擴展
選擇菜單欄中的 工具 --》 擴展和更新;點擊左側的 聯機;這樣就可以在其中下載你需要的擴展。下圖就是我安裝的一些擴展:
當然,其中最有用,最重要的就是 Visual Assit X 了,其他的都是浮雲。轉載,僅供參考。