cocos2dx上傳文件
1. 在Cocos2dx3.4 中導入csb文件時出錯
有兩種原因:1.腳本出錯 2.要不就是你所導入的項目,在被你復制過來之前不是壓縮文件
2. 如何win32上cocos2dx發布安卓apk流程
首先在exclipe上配置好java的jdk1.6或更高,配置好android環境(最好有android2.1或2.2以及更高版本的sdk)。
在下載個ndk,ndk解壓後先放到一邊,cygwin,解壓後,sygwin解壓安裝會比較久大概4-5個小時,如果解壓安裝成功,
cygwin安裝過程請參考http //wenku com/view/88b001ef4afe04a1b171de05.html看到第三步就行了,接下來繼續看
安裝好cygwin後驗證下是否成功打入(注意空格)make -v ,gcc -v 沒有出現意外的話就出現以下畫面
表示你已經裝好cygwin了,接下來是修改在安裝cygwin目錄下,如本人安裝目錄如下D:\cygwinx\home\Administrator
然後最好用UE編輯器點開.bash_profile,然後在最下面加上
(ndk路徑以及cocos2dx路徑即/cygdrive/你所在的盤的ndk路徑如下)
NDK_ROOT=/cygdrive/e/AndroidNDK/android-ndk-r8e
export NDK_ROOT
COCOS2DX_ROOT=/cygdrive/d/cocos2d-2.1beta3-x-2.1.1
export COCOS2DX_ROOT
然後就完成了大半了,再在D:\cocos2d-2.1beta3-x-2.1.1下點擊
第一個填寫的是包名稱,一般填寫***.***.***之類,
第二個是填寫工程名,你根據需要定義咯
在最好選項是選擇哪種android的sdk,最好使用經歷低的版本(如2.1或2.2)比較好兼容。
然後生產出來時個簡單的helloworld工程,如果是要將自己的工程裝成android的,及將生成工程文件中的proj.android拷貝到自己的工程文件中,如下圖
然後需要修改三個地方如
1)將proj.win32裡面的.h以及.cpp文件拷貝到Classes中
(如果以後修改那些.cpp文件或.h文件需要繼續從proj.win32拷貝到Classes中覆蓋掉之前的文件再生成新的android工程)
2)進去proj.android\jni下面修改Android.mk,
將所有.cpp的路徑都添加進去即可,如本人增加了下面那些路徑,
3)用UE編輯器修改build_native.sh文件
在第三行下面加入,如下
NDK_ROOT=/cygdrive/E/AndroidNDK/android-ndk-r8e
COCOS2DX_ROOT=/cygdrive/D/cocos2d-2.1beta3-x-2.1.1
GAME_ROOT=$COCOS2DX_ROOT/RussiaGame (注意RussiaGame是我cocos2dx的工程名)
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources
好了 修改完這些保證每錯誤之後
打開cygwin,然後經過下面路徑(以本人路徑為參照)
到最後./build_native.sh之後沒錯誤的話(這個過程比較久大概十幾二十分鍾,有些可能要半個鍾頭),它就能生產android項目了(成功的判斷是看他是否生產.so文件)
成功的話在路徑D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android\libs\armeabi下能看到libgame.so文件
然後接下來就可以生成可以在exclipe上運行的android工程了,導入D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android這個就可以在exclipe上看到該工程了
如果出現
如果一開始這個文件沒有存在的話(我當時是一開始沒有這個文件,當時很悲劇,常看了項目jdk是1.6的沒問題,最後發現就是這個文件缺失造成的)
右鍵點擊你的項目-》選擇導入-》再點擊browse-》(進入到你的項目所在的目錄,進入cocos2dx->platform->android->java)然後就會出現那個文件了 以及有個libcocos2dx項目也有了(這個項目相當於類庫不要刪掉它),以後就不用重復上面這些導入了。
然後沒有報錯就說明成功啦,然後就可以在exclipe上進行真機運行啦(注意好像虛擬機運行一直會出現bug,我也一直沒成功,所以建議真機運行吧,好像現在只能真機運行才行),然後就可以成功運行以及會在bin文件下回生成一個apk文件可以拷貝給大家玩啦,好開心的喔。。。。。
然後到現在這樣就算是轉android成功了,
(悄悄說下 ,如果需要把項目在真機上弄成豎屏,及要在AndroidManifest.xml中改一改, android:screenOrientation="landscape"(橫屏),android:screenOrientation="portrait"(豎屏),它默認為橫屏),到現在好開心的,打了這么多,大家一起學習吧加油
3. 如何win32上cocos2dx發布安卓apk流程
首先在exclipe上配置好java的jdk1.6或更高,配置好android環境(最好有android2.1或2.2以及更高版本的sdk)。
在下載個ndk,ndk解壓後先放到一邊,cygwin,解壓後,sygwin解壓安裝會比較久大概4-5個小時,如果解壓安裝成功,
cygwin安裝過程看到第三步就行了,接下來繼續看
安裝好cygwin後驗證下是否成功打入(注意空格)make -v ,gcc -v 沒有出現意外的話
表示你已經裝好cygwin了,接下來是修改在安裝cygwin目錄下,如本人安裝目錄如下D:\cygwinx\home\Administrator
然後最好用UE編輯器點開.bash_profile,然後在最下面加上
(ndk路徑以及cocos2dx路徑即/cygdrive/你所在的盤的ndk路徑如下)
NDK_ROOT=/cygdrive/e/AndroidNDK/android-ndk-r8e
export NDK_ROOT
COCOS2DX_ROOT=/cygdrive/d/cocos2d-2.1beta3-x-2.1.1
export COCOS2DX_ROOT
然後就完成了大半了,再在D:\cocos2d-2.1beta3-x-2.1.1下點擊
第一個填寫的是包名稱,一般填寫***.***.***之類,
第二個是填寫工程名,你根據需要定義咯
在最好選項是選擇哪種android的sdk,最好使用經歷低的版本(如2.1或2.2)比較好兼容。
然後生產出來時個簡單的helloworld工程,如果是要將自己的工程裝成android的,及將生成工程文件中的proj.android拷貝到自己的工程文件中,如下圖
然後需要修改三個地方如
1)將proj.win32裡面的.h以及.cpp文件拷貝到Classes中
(如果以後修改那些.cpp文件或.h文件需要繼續從proj.win32拷貝到Classes中覆蓋掉之前的文件再生成新的android工程)
2)進去proj.android\jni下面修改Android.mk,
將所有.cpp的路徑都添加進去即可,如本人增加了下面那些路徑,
3)用UE編輯器修改build_native.sh文件
在第三行下面加入,如下
NDK_ROOT=/cygdrive/E/AndroidNDK/android-ndk-r8e
COCOS2DX_ROOT=/cygdrive/D/cocos2d-2.1beta3-x-2.1.1
GAME_ROOT=$COCOS2DX_ROOT/RussiaGame (注意RussiaGame是我cocos2dx的工程名)
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources
好了 修改完這些保證每錯誤之後
打開cygwin,然後經過下面路徑(以本人路徑為參照)
到最後./build_native.sh之後沒錯誤的話(這個過程比較久大概十幾二十分鍾,有些可能要半個鍾頭),它就能生產android項目了(成功的判斷是看他是否生產.so文件)
成功的話在路徑D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android\libs\armeabi下能看到libgame.so文件
然後接下來就可以生成可以在eclipse上運行的android工程了,導入D:\cocos2d-2.1beta3-x-2.1.1\RussiaGame\proj.android這個就可以在eclipse上看到該工程了
如果一開始這個文件沒有存在的話(我當時是一開始沒有這個文件,當時很悲劇,常看了項目jdk是1.6的沒問題,最後發現就是這個文件缺失造成的)
右鍵點擊你的項目-》選擇導入-》再點擊browse-》(進入到你的項目所在的目錄,進入cocos2dx->platform->android->java)然後就會出現那個文件了 以及有個libcocos2dx項目也有了(這個項目相當於類庫不要刪掉它),以後就不用重復上面這些導入了。
然後沒有報錯就說明成功啦,然後就可以在eclipse上進行真機運行啦(注意好像虛擬機運行一直會出現bug,我也一直沒成功,所以建議真機運行吧,好像現在只能真機運行才行),然後就可以成功運行以及會在bin文件下回生成一個apk文件可以拷貝給大家玩啦,好開心的喔。。。。。
然後到現在這樣就算是轉android成功了,
(悄悄說下 ,如果需要把項目在真機上弄成豎屏,及要在AndroidManifest.xml中改一改, android:screenOrientation="landscape"(橫屏),android:screenOrientation="portrait"(豎屏),它默認為橫屏)
轉載僅供參考,版權屬於原作者。祝你愉快,滿意請採納哦
4. 如何將cocos2dx移植到eclipse上
1.准備三個工具:並解壓放置在Documents目錄下
a.Android開發環境包ADT 已經集成在Eclipse中,我的是adt-bundle-mac-x86_64-20130917mac下默認已經安裝了JDK
b.Android NDK 即Android環境本地編譯C++的包,用r8的,r9的貌似有問題 去網路空間下android-ndk-r8
c.cocos2d-x 開發包, 我的是cocos2d-x-2.1.4
2.添加全局變數vi ~/.bash_profile其中添加如下:路徑不要有空格
export NDK_ROOT_LOCAL=/Users/user/Documents/android-ndk-r8
export NDK_ROOT=$NDK_ROOT_LOCAL
export ANDROID_NDK_ROOT=$NDK_ROOT
export ANDROID_SDK_ROOT=/Users/user/Documents/adt-bundle-mac-x86_64-20130917/sdk
export ANDROID_SDK_ROOT_LOCAL=$ANDROID_SDK_ROOT
export COCOS2DX_ROOT=/Users/user/Documents/cocos2d-x-2.1.4
export PATH=$ANDROID_NDK_ROOT:$PATH
export PATH=$ANDROID_SDK_ROOT:$PATH
export PATH=$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH
這樣以後就不需要在create-android-project.shbuild_native.sh這兩個腳本中再重新修改添加響應的路徑了
3.直接cd 到cocos2d-x-2.1.4目錄下並執行「./create-android-project.sh」根據提示輸入相應的包名,項目名和版本號。
生成的項目會在cocos2d-x-2.1.4目錄下(這里假設項目名為PPP),然後cd到 PPP/proj.android下,執行「./build_native.sh」 如此編譯生成C++的相關靜態庫,有時某些頭文件需要include 如:/Users/user/Documents/cocos2d-x-2.1.4/cocos2dx/platform/android/CCFileUtilsAndroid.h
4.打開Eclipse 導入剛剛生成的項目PPP,並修改AndroidManifest.xml中得icon名稱,另外還需在Eclipse里導入cocos2d-x的兩個工程庫最終如下:
libcocos2dx 位於/User/users/Documents/cocos2d-x-2.1.4/cocos2dx/platform/android/java
libPluginProtocol 位於/User/users/Documents/cocos2d-x-2.1.4/plugin/protocols/proj.android

5. 如何使用友盟 Cocos2d-x 分享組件實現 Android/iOS 分享功能
首先我簡單介紹一下組件壓縮包的組成
Cocos2dx
實現Cocos2d-x中跨平台分享功能,需拷貝到您項目的Classes文件夾中;
Platforms
原生的Android和iOS社會化組件SDK,需要您將庫和資源拷貝到對應平台的項目中;
doc
組件的集成文檔;
Umeng_Cocos2dx_Demo_V1.0
Android部分的demo文件,可以安裝在手機上看一下簡單的分享效果和樣式
Cocos2d-x雖然是一個跨平台的引擎,但是對於Android和IOS平台來說,具體的集成方式還是有一定的區別,這里分別介紹Android和IOS平台集成中不同的地方,然後再集中介紹跨平台通用的部分。
Android平台集成步驟:
步驟一:
下載Cocos2d-x組件(下載地址) 並且將jar包添加到build path 路徑下,將res資源文件夾加入到你工程對應資源文件下。將Platforms/Android/controller目錄下的com文件夾拷貝到您的Cocos2d-x項目Android平台的src目錄下,並且在jni/Android.mk中的LOCAL_SRC_FILES下添加如下配置 (注意格式,否則會編譯出錯) :
../../Classes/Cocos2dx/Android/CCUMSocialController.cpp \
../../Classes/Cocos2dx/ShareButton/UMShareButton.cpp \
../../Classes/Cocos2dx/Common/CCUMSocialSDK.cpp
步驟二:
在Cocos2dxActivity子類的onCreate方法下添加如下代碼,用來完成初始化步驟
// this為Cocos2dxActivity類型, 參數2為描述符,可隨意修改.
CCUMSocialController.initSocialSDK(this, "com.umeng.social.share");
步驟三:
在代碼中覆寫Cocos2dxActivity子類的onActivityResult方法,用來實現回調方法。在onActivityResult添加如下代碼 :
// 授權回調
CCUMSocialController.onActivityResult(requestCode, resultCode, data);
super.onActivityResult(requestCode, resultCode, data);
iOS平台集成步驟:
步驟一:
解壓SDK壓縮包,將Platforms/iOS文件夾和Cocos2dx文件夾拖入工程目錄,並刪除Cocos2dx/Android文件夾,添加後應該是這個效果:
步驟二:
添加系統需要的framework
Security.framework //用於系統加密處理
libiconv.dylib //QQ互聯的庫文件
SystemConfiguration.framework //QQ互聯需要的framework
CoreGraphics.framework //QQ互聯需要的framework
Social.framework //分享組件需要的framework,如果不使用twitter則不需要
libsqlite3.dylib //QQ互聯需要的framework
libstdc++.dylib //C++的庫文件
CoreTelephony.framework //QQ互聯需要的framework
libz.dylib //QQ互聯需要的framework
Accounts.framework //系統需要的framework,如果不使用twitter則不需要
步驟三:
實現系統的回調方法,在Xcode工程中的ios文件夾下的AppController.mm文件中加入下面的代碼:
#import "UMSocial.h"
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [UMSocialSnsService handleOpenURL:url];
}
完成了上述准備工作之後,就可以開始正式的分享步驟了,友盟提供了多種分享樣式,有精力的開發者可以使用底層介面,可以完全自由定製分享界面和樣式,不過相信大部分開發者們使用第三方插件的初衷都是為了節省精力,所以這里就只介紹使用默認分享界面的方法,有更多需求的開發者們可以自己探索自定義界面介面部分。
步驟一:加入系統需要的頭文件
// 授權回調
#include "Cocos2dx/Common/CCUMSocialSDK.h"
#include "Cocos2dx/ShareButton/UMShareButton.h"
// 使用友盟命令空間
USING_NS_UM_SOCIAL;
// ...... 代碼省略
// HelloWorld為cocos2d::CCLayer的子類
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return false;
}
}
步驟二:分享按鈕的創建
// 創建分享按鈕, 參數1為按鈕正常情況下的圖片, 參數2為按鈕選中時的圖片,參數3為友盟appkey, 參數4為分享回調
UMShareButton *shareButton = UMShareButton::create("shareNormal.png","shareSelected.png", "你的友盟appkey", share_selector(shareCallback)) ;
步驟三:設置分享平台及內容
// 顯示在友盟分享面板上的平台
vector
* platforms = new vector
();
platforms->push_back(SINA);
platforms->push_back(RENREN) ;
platforms->push_back(DOUBAN) ;
platforms->push_back(QZONE) ;
platforms->push_back(QQ) ;
// 設置友盟分享面板上顯示的平台
shareButton->setPlatforms(platforms);
// 設置文本分享內容
shareButton->setShareContent("umeng social Cocos2d-x sdk.") ;
// 設置要分享的圖片, 圖片支持本地圖片和url圖片, 但是url圖片必須以http://或者https://開頭
shareButton->setShareImage("/sdcard/header.jpeg") ;
// 設置按鈕的位置
shareButton->setPosition(ccp(150, 180));
// 然後開發者需要將該按鈕添加到游戲場景中
CCMenu* pMenu = CCMenu::create(shareButton, NULL);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu, 1);
// ********************** 設置平台信息 ***************************
// CCUMSocialSDK *sdk = shareButton->getSocialSDK();
// sdk->setQQAppIdAndAppKey("設置QQ的app id", "appkey");
// sdk->setWeiXinAppId("設置微信和朋友圈的app id");
// sdk->setYiXinAppKey("設置易信和易信朋友圈的app id");
// sdk->setLaiwangAppInfo("設置來往和來往動態的app id",
// "設置來往和來往動態的app key", "我的應用名");
// sdk->setFacebookAppId("你的facebook appid");
// 設置用戶點擊一條圖文分享時用戶跳轉到的目標頁面, 一般為app主頁或者下載頁面
// sdk->setTargetUrl("http://www.umeng.com/social");
// 打開或者關閉log
// sdk->setLogEnable(true) ;
// ********************** END ***************************
集成到這一步就完成了,如果沒有異常,應該會出現下面的界面,這說明你已經成功實現了集成工作。
好了,到這里,整個集成過程就結束了,很多人比較關心集成組件的難度,個人測評感覺,具備一定開發基礎的研發同學可以在一天內搞定整個組件的集成,技術強的大牛,分分鍾搞定。謝謝大家的閱讀,希望能夠幫助到大家!
轉載僅供參考,版權屬於原作者。祝你愉快,滿意請採納哦
6. 運行cocos2dx引擎哪個python文件添加cocos2d
在cocos2d-x2.1.4以上的版本中,取消了使用vs模版創建項目的方法,開始使用python腳本創建項目,使用python創建項目需要在命令行敲很多指令,比較麻煩。我把這些命令組合在一起,放在了一個批處理文件中,直接雙擊打開批處理文件就可以通過幾個簡單的指令來創建項目。
第一步: 新建一個txt文件,將下面這段代碼拷貝進去,保存文件,將文件名改成create_project.bat。
@echo off
set /p projectName=請輸入項目名稱:
if "%projectName%"=="" goto inputError
set /p packageName=請輸入包標示名:
if "%packageName%"=="" goto inputError
create_project.py -project %projectName% -package %packageName% -language cpp
pause
exit
:inputError
@echo 項目名稱或者包標示名不能為空!
pause
如下圖所示:
第二步: 將create_project.bat這個文件放到你的cocos2d-x的\tools\project-creator目錄之下
下圖是我的電腦的目錄,大家根據自己的電腦實際路徑放置
注意,一定要把create_project.bat放到與create_project.py同一目錄下,不然會找不到.py文件,如果覺得每次都打開這個路徑比較麻煩,可以創建一個快捷方式到桌面,但不要直接復制到桌面!
第三步: 直接雙擊打開create_project.bat就行了,出現下面界面,輸入你的項目名和包名就ok了,也不需要指定使用的語言了,已經設置好了用c++了,創建成功後出現以下界面。
好了去projects目錄下找你的項目吧!
7. 如何學習一種開發框架
我接觸的許多程序員中,絕大多數都是知其然不知其所以然,做了AS好幾年的,甚至連AVM是什麼都不知道的太多了。許多程序員把快速開發出成品作為是工作的唯一目標,認為研究底層知識和周邊技術是浪費時間。很多東西他們不是不能知道,而是不想知道。
更有甚者,學會了 gotoAndPlay 就敢說熟悉 Flash,會敲 ls 就敢說精通Linux。前幾天有朋友發給我他膜拜了一日的逆天簡歷,上面洋洋灑灑寫著匯編、C/C++、Linux網路編程、JAVA EE、Perl、Bash、Python、Windows驅動開發、單片機開發、HTML、CSS3、JavaScript、PHP、cocos2d-x、iOS開發、安卓開發……而且所有的項目的級別都是 精通!
我看完簡歷和朋友說:這位前後端桌面嵌入式系統驅動網頁手機開發通吃的全棧神人10年裡跳槽8次,從沒在一個公司干滿過2年,你敢用么?
======上面廢話,不看也罷。
剛巧我也是從AS3轉到了cocos2d-x,說說我的經驗吧。
一、cocos2d-x 部分
1.1 技術選型
從第三個手游開始,我實在被Adobe的ANE和國內的小平台折騰得沒了脾氣,決定轉到cocos2d-x。在選擇哪種語言綁定的時候糾結了很久,最後力排眾議選了 lua:Cocos2dx+lua合適還是Cocos2dx+js合適? cocos2d-x 2.x 的lua綁定做得並不好,於是我選擇了 quick-cocos2d-x (後來,quick被觸控收購)。
1.2 學習 C++
C++ Primer 中文版(第 5 版) (豆瓣) 是不錯的入門書籍,建議看第五版,我寫過一篇 C++Primer 第4版和第5版比較 。學習期間建議畫一些思維導圖幫助理解和整理思路。例如這個(不完整):
1.3 學習DEMO和熟悉開發平台
編譯 cocos2d-x 自帶的 TestCPP 項目,全部跑一遍。熟悉 cocos2d-x API 的用法。記得用doxygen 生成文檔,建議每個API的功能都瀏覽一遍。
有的同學可能更喜歡直接看源碼,那當然更好。不過文檔有一個好處就是能更直觀地顯示繼承關系。
在學習DEMO的過程中,你必須熟悉自己開發平台的IDE,例如Windows上必須熟悉 Visual Studio,而OS X上必須熟悉xcode,Linux平台上就熟悉Eclipse+CDT吧。
注意,quick-cocos2d-x 是不支持Linux開發平台的。
2014-05-17更新:quick已經使用QT重寫了player部分,但依然不支持Liunx平台。
1.4 了解引擎的文件夾結構
基於 cocos2d-x 源碼生成的文檔並不怎麼詳細,許多功能必須看源碼。但這個階段,我不建議糾結源碼太深,倒是可以糾結一下 cocos2d-x 的文件夾結構,看看各個類放在什麼地方,找一找常見的哪些宏和常量以及枚舉定義在什麼地方,這花不了多少時間,但能讓你對cocos2d-x有更深刻的了解,同時給你很強的成就感。這種成就感沖淡了你面對大量源碼時候的無力感,讓你能夠繼續前行。
下面是我的分析:
1.5 重復上面的第3步:再次學習DEMO
這時候看DEMO可能會輕松不少,但是你會有更多的問題去糾結。例如多解析度支持?例如坐標系統?例如繪圖功能?例如層級管理系統?例如事件傳遞系統?等等等等……這時候可以去Google(注意不要用百毒和其他搜索引擎)找文檔看了。我推薦一些我看過的不錯的文檔和博客:
Cocos2d-x官方中文文檔 v2.x
Cocos2D | iOS Development Tips & Tricks by BiOM
子龍山人 - 博客園
紅孩兒的游戲編程之路
Ray Wenderlich
Cocos2d-x | Cross Platform Open Source 2D Game Engine
許多博客都是極好的。紅孩兒(後來加入了觸控)寫了許多源碼分析,每一句源碼都加了注釋。雖然我不太認同他這種吃力不討好的方法,但對於新手來說確實是有很大的幫助。
另外在 Stack Overflow 你能找到絕大部分問題的答案。當然,許多問題是針對 cocos2d 而非 cocos2d-x 的,不過用法相同,照看不誤。許多優秀的文章都是基於 cocos2d 的,所以,不要介意,可以先花半天時間熟悉 OC 的語法,能看懂即可。
暫時不要買中文書。我曾經花3天時間看完了 《Cocos2D-X游戲開發技術精解》 和 《cocos2d-x手機游戲開發–跨iOS、Android和沃Phone平台》,發現作者其實就是來賺稿費的。
忘了廣告了,我的博客(cocos2d-x | zrong's Blog)也有一些cocos2d-x內容,歡迎來噴。
1.6. 熟悉工具集
現在你應該對周邊工具感興趣了。例如幀動畫使用什麼製作?BMFont使用什麼製作?骨骼動畫呢?plist文件怎麼編輯?碎圖用什麼工具拼合?有些項目上,你有許多選擇,也可能沒得選。去Google吧,如果遇到選擇上的問題,歡迎找我討論。
二、 quick-cocos2d-x 部分
2.1 現在就到lua時間了
請認真讀完 《Lua程序設計(第2版) 》 第一、二、三部分。第四部分可暫時不讀。
1.2 熟悉 quick-cocos2d-x 的文件夾結構
相信有了上面 cocos2d-x 的基礎,這個應該不難理解。
1.3 跑完 quick-cocos2d-x 自帶的所有sample
在這期間,熟悉 framework 中的所有封裝。可以參考 quick網站 和 quick wiki 。
1.4 學習導出API給Lua使用
導出 C/C++ API 給 Lua 使用
三、學習 OpenGL ES
熟悉Lua部分之後,作為一個有志於成為程序員的碼農,依然要回到C/C++來,這里才是 cocos2d-x 的本質。
cocos2d-x 使用 OpenGL ES 進行渲染的,如果要對 cocos2d-x 的渲染層進行任何形式的擴展,你完全避不開 OpenGL ES。
既然逃不開,那就對TA說,請張開雙腿,我要上。
3.1 閱讀 OpenGL ES 2.0 Programming Guide
下面是這本書的官網,目前已經出了 OpenGL ES 3.0 版本,cocos2d-x 使用的是2.0。
這本書寫得淺顯易懂,非常適合新手。有位網友花3個月時間翻譯了中文版,但還是建議你不要看了。
這里是 OpenGL ES 的 官方文檔 和 API中文翻譯 。
當然,你也可以買那本著名的 OpenGL 紅寶書 《OpenGL編程指南(原書第7版)》 來看,不過 OpenGL ES 相對與 OpenGL 來說還是有一些不同的,你要知道如何區分這些不同。
3.2 嘗試理解 cocos2d-x 的渲染部分架構
相關的類我就不列出了,我正在醞釀一個這方面的系列文章准備發到博客上。如果寫完了,我會在這里更新。
3.3 自己寫一些濾鏡、繪圖功能的擴展
例如這個: cocos2d-x-filters
四、回歸項目
到了這里,你可以開始你的項目了。雖然源碼還沒有讀完,但相信整個架構都能理解了。在做項目的過程中,再去一點點讀源碼是比較快捷和我能夠接受的方法,否則就太枯燥了。
你可以還需要選擇一下cocos2d-x相關的工具。你可能聽說過 CCB(cocosBuilder)和CCS(cocoStudio),嘗試了解她們,再決定是否使用她們。
你已經有了AS3的基礎,這樣許多前端的概念和經驗已經很豐富了。這些經驗在cocos2d-x中同樣適用。但是要注意的是,cocos2d-x不是AS3,不要試圖用AS3的方法去使用cocos2d-x。
有位碼農在從C#轉到AS3的時候向我抱怨:為什麼Flash Builder沒有Visual Studio的這個功能那個功能?
然後這位碼農在從AS3轉到Sublime Text(用於Lua編輯)的時候向我抱怨,為什麼Sublime Text沒有Flash Builder的這個功能那個功能?
上面是個笑話。
同時,為了解決一些cocos2d-x沒有提供的功能,你必須去學習相關的知識。例如這個:在 cocos2d-x 中使用 libcurl 實現上傳文件功能(附quick-cocos2d-x封裝)。不過你現在已經有了基礎,學習這些不是難事。
在有時間的時候,可認真讀一下上面提到的《Lua程序設計(第2版) 》第四部分,了解Lua和C語言通信的方式,順便看看cocos2d-x裡面是怎麼實現的。
另外,一些你需要的引擎中沒有的功能,也可以順手實現了開源出來(例如這個:一個LuaSocket封裝),說不定你需要的東西正好是別人也需要的。
五、熟悉發布平台
既然是做手游,Android和iOS平台是逃不掉了。
你要熟悉Android和iOS平台的特點,熟悉JAVA在Android上的應用,熟悉Objective-C在iOS上的應用,熟悉Eclipse ADT和XCode(上面應該已經熟悉過了)。
你還要熟悉Google Play和AppStore的發布流程以及方針、政策,內購的接入、SDK的嵌入。
你要學習和各個接入平台的程序員、商務、前台小妹打交道(因為經常會找不到你要找的真正的負責該SDK的技術人員),你要能忍受國內小平台糟糕的文檔、代碼規范和逆天的編程方法。
終、沒有終點
上面說的並不完整,應該遺漏了不少東西,但我只能說這么多了。因為我的經驗也止於此。
祝你成功!
轉載僅供參考,版權屬於原作者
8. cocosstudio導出的json文件怎樣放到cocos2dx裡面去
UI的話UILayer*
ul=UILayer::create();
addChild(ul);
UILayout*
widget=dynamic_cast
(GUIReader::shareReader()->widgetFromJsonFile("Json路徑"));
ul->addWidget(widget);
骨骼動畫
的話我是這樣用的
用到的都是Export這個文件夾下的東西
CCArmatureDataManager::sharedArmatureDataManager()->addArmatureFileInfo("Export文件夾下的ExportJson文件");
CCArmature*
armature=CCArmature::create("
cocoStudio
的文件名字");
就用過這兩個,希望對你有幫助。。
9. 新手,cocos2dx移植到android平台不知道怎麼導入sqlite3庫
創建windows平台項目 一、 搭建windows開發環境 官網上顯示cocos2d-x支持win7、winxp、vista系統但我只在win7上用過以下說明均是在win7系統上的編譯器使用vs2010。 1、 安裝vs2010 2、 安裝Visual Assist X可選 3、 執行build-win32.bat編譯cocos2d-x 4、 運行cocos2d-x根目錄下的install-templates-msvc.bat將cocos2d-x模板加入vs模板庫。 5、將.\Debug.win32目錄下的所有dll文件拷貝至Windows\system32\ (iconv.dll libcocos2d.dll libcocosDenshion.dll libcuri.dll libEGL.dll libgles_cm.dll libxml.dll pthreadVCE2.dll zlib1.dll )6、 雙擊cocos2d-win32.vc2010.sln進入vs編譯環境 二、 新建win32項目 1、在「解決方案」上單擊右鍵選擇「添加」-〉「新建項目」。 2、選擇「左側Cocos2d-x模板」在右側列表中選擇「Cocos2d-win32 Application」輸入項目名稱「Cocos2dDemo」點「確定」。3、在彈出的對話框中點擊「下一步」。 4、如果需要使用Box2D引擎則選中否則不要選。點擊「finish」創建成功。 三、 編譯運行 1、右鍵Cocos2dDemo項目選擇「生成」進行編譯。 2、右鍵Cocos2dDemo項目選擇「設為啟動項目」。然後F5或者點擊菜單欄的運行鍵 運行。四、 創建新的解決方案 新建項目有兩種方式一是直接在cocos2d-x解決方案中添加新項目上面已經介紹過了。當你剛開始接觸cocos2d-x還在嘗試寫demo時用這種方式可以快捷的創建demo而且方便查看例子中的代碼。另一種方式是創建一個新的解決方案方法如下 1、「文件」-〉「新建」-〉「項目」 2、進入新建項目的窗口選擇「左側Cocos2d-x模板」在右側列表中選擇「Cocos2d-win32 Application」輸入項目名稱「Cocos2dDemo」點「確定」。然後執行「下一步」。 3、使用Box2D引擎則選中否則不要選。點擊「finish」創建成功。 4、單擊左下角的屬性標簽或者選擇「視圖」-〉「屬性管理器」打開屬性管理器5、在屬性管理器中雙擊「Microsoft.Cpp.Win32.user」彈出屬性頁在裡面設置VC++目錄即可。這樣該設置對所有VC項目都有效見下圖。 6、在「包含目錄」中, 加入下列項目 (D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32) 7、在「庫目錄」中, 加入下列項目(D:\adroid\cocos2d-2.0x-2.0.3\Debug.win32)(發布時用release目錄下的!!) 8、上面的第4、5、6、7條也可以通過如下方法解決: 定位到%USERPROFILE%\appdata\local\microsoft\msbuild\v4.0可以通過運行或直接在windows資源管理器的地址欄中輸入使用其他文本編輯工具修改Microsoft.Cpp.Win32.user.props或Microsoft.Cpp.X64.user.props文件中的相關欄位。以下是我的文件內容 <IncludePath>D:\android\cocos2d-2.0-x-2.0.3;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\include;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\win32;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32\OGLES;D:\android\cocos2d-2.0-x-2.0.3\external\Box2D;D:\android\cocos2d-2.0-x-2.0.3\CocosDenshion\include;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\kazmath\include;$(IncludePath)</IncludePath><LibraryPath>D:\android\cocos2d-2.0-x-2.0.3\Debug.win32;$(LibraryPath)</LibraryPath> 第4至8條的作用是加入解決方案所依賴的頭文件和庫文件以保證項目的正常編譯運行。 五、 如何刪除vs里的cocos2d-x模板 1、 打開如下目錄 (Example as default install) 1VS2008: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcprojects\ 2VC2008Express: C:\Program Files\Microsoft Visual Studio 9.0\VC\Express\VCProjects 3VS2010: C:\Program Files\Microsoft Visual Studio 10.0\VC\vcprojects\ 4VC2010Express: C:\Program Files\Microsoft Visual Studio 10.0\VC\Express\VCProjects 2、 刪除此目錄下的 Cocos2d-x文件夾 3、 刪除前綴為 CCAppWiz (0.8.0 or later) 或 CCXAppWiz (0.7.2 or earlier)的文件
將項目由win32移植到android平台 一、 快速搭建android開發環境 1、將伺服器上的eclipse、java、android sdk、android ndk、cygwin、cocos2d-x文件夾拷貝到本地請注意保存的路徑為英文、不包含空格、且不要過長。 2、 運行eclipse添加android-sdk的路徑。(preferences->Android:SDK Location) 3、 添加ADT(Help->Install New Software:Work with) 4、添加java環境變數。 新建變數JAVA_HOME變數值為java目錄的絕對路徑。 在path中添加 %JAVA_HOME%\D:\android\Java\jdk1.6.0_20\bin; %JAVA_HOME%\D:\android\Java\jdk1.6.0_20\jre\bin; D:\android\Java\jre6\bin; 5、運行一次Cygwin.bat 6、修改\cygwin\home\用戶名\.bash_profile文件添加NDK_ROOT=/cygdrive/d/android/android-ndk-r8b export NDK_ROOT 7、 修改\cocos2d-2.0-x-2.0.3\create-android-project.bat中的如下路徑 set _CYGBIN=e:\cygwin\bin set _ANDROIDTOOLS=e:\android\android-sdk\tools set _NDKROOT=e:\android\android-ndk-r8 二、 新建android項目 1、 運行create-android-project.bat創建新的android項目例如項目名稱為Cocos2dDemo。 2、 將win32下完成的.cpp和.h文件拷貝到\Cocos2dDemo\Classes 3、將win32下使用的資源拷貝到\Cocos2dDemo\proj.android\assets 4、將cpp文件的路徑、使用的頭文件的目錄加入到Android.mk文件。 5、打開Cygwincd 到/Cocos2dDemo/proj.android目錄下 6、執行./build_native.sh進行編譯 7、在eclipse中編譯打包。 三、 補充 1、2.0以上版本的引擎基本無法在android模擬器上運行建議在xcode和vs上調試好直接在真機上運行。 2、2.0以上版本的引擎要求android的開發和運行環境都要2.2以上的sdk。
將項目由win32移植到ios 一、 創建ios項目 1、 安裝XCode 2、執行install-templates-msvc.bat將模板添加到XCode 3、打開xcode選擇Create a new Xcode project選擇cocos2d-x模版 4、點擊next填入項目名稱Man 5、找到Man的主項目在這里新建一個iOS文件夾。點擊create創建完成 6、刪除Resource和Classes下的多餘文件Helloworld的代碼和資源 7、右鍵點擊Resource 選擇Add Files to "Man"... 7、將Man主項目文件夾下的Resource文件夾中的資源添加到當前工程。注意選擇create folder references for any added folders只是添加一個引用 8、同樣的方法添加源文件和頭文件到Classes下 9、點擊Run編譯運行 二、 補充 1、Mac 平台的OS X需要10.6及以上版本 2、IOS平台需要4.0及以上版本 3、IOS真機支持iPad 1、iPad 2、iPad 3、 iPhone 3GS、iPhone 4、iPhone 4S、iPhone 5、iphone6、iPod Touch 3 and iPod Touch 4 不支持iPhone and iPhone 3G。
