由于工作需要,近期將記錄Cocos2d-JS的學(xué)習(xí)實戰(zhàn),Spring源碼還是會繼續(xù)。進(jìn)入cocos2d-JS的學(xué)習(xí),對于不會客戶端開發(fā)(Android,IOS),會JS的程序員來說Cocos2d-JS<b>游戲引擎</b>的出現(xiàn)真是福音,它是個跨全平臺的游戲引擎。其中有兩個概念:
- Cocos2d-HTML5
- Cocos2d-x JavaScript Bindings(JSB)
其中這兩者提供的js的api是一致的,Cocos2d-html5是Cocos2d-JS的一個重要模塊,是一個面向Web的游戲引擎,采用Canvas或者WebGL渲染,并完全兼容HTML5規(guī)范,如果您只關(guān)注于純Web游戲開發(fā),那么您還可以選擇Cocos2d-JS Lite的版本。 Cocos2d-x JavaScript Bindings(JSB)版是C++實現(xiàn)。可以把 Cocos2d-x JavaScript Bindings(JSB)理解成一個和C++的橋。就像JVM是C++寫的一樣,對外提供的是JAVA的接口。Cocos2d-JS是二者的融合。這是Cocos官網(wǎng)和cocos2d-js github的地址。那么到底什么區(qū)別的呢?我理解的就是只在web運(yùn)行的話Cocos2d-html5足矣,但是你要打包成app(Android和IOS還有WIN)的話然后只用js語言開發(fā)那么需要的是Cocos2d-JS,其中包含了 Cocos2d-x JavaScript Bindings(JSB)。看一下官網(wǎng)的圖片
看一下Cocos2d-JS下載下來的引擎包的目錄。我下載的是github上的master分支。
看一下
- 其中framwork就是 Cocos2d-HTML5和js-bindings兩者。
- docs是文檔,都是MarkDown格式的 即.md結(jié)尾的。
- samples是官方提供的例子 對以后的學(xué)習(xí)非常重要
- templates是官方提供的模板,在cocos命令創(chuàng)建項目的時候會直接把templates的東西copy過去 作為你的新建項目。
- tools目錄就是打包成app的時候需要到工具集。其中還有consle 就是cocos的終端控制臺,運(yùn)行一些cocos命令。
- 最下面setup.py的文件是我們安裝cocos時需要用到的文件。
下面看一下開發(fā)環(huán)境的搭建,我的是windows版的。
- 安裝Python環(huán)境官方是指定2.7版本的Python 下載地址
- 配置Python的環(huán)境變量 path中加入即可(exe安裝文件不需要設(shè)置手動設(shè)置環(huán)境變量)
cmd運(yùn)行
然后進(jìn)入cmd中進(jìn)入下載下來的cocos2d-js-master的目錄運(yùn)行python setup.py文件。
其中有幾個工具的地址需要設(shè)置
我的開發(fā)工具用的是sublime text3,好多人用的是webstorm 。這個自己選擇,官方還提供了IDE,目前最新的是個Creator(下章講解,官網(wǎng)已經(jīng)找不到IDE下載地址),這東西我還不會使用,慢慢摸索吧。
下面創(chuàng)建個cocos工程。
cocos new helloworld -l js -d ./
helloworld是項目的名字,-l是語言設(shè)置(js,lua,c++),-d是目錄設(shè)置 我的是當(dāng)前目錄
如果不知道命令怎么使用可以運(yùn)行 cocos -h 列出可以選擇的命令 ,然后在cocos [命令] -h 例如
創(chuàng)建好項目以后我們可以將將創(chuàng)建好的項目放到nginx下面,也可以在nginx下面配置alais目錄
然后啟動nginx就可以訪問了http://127.0.0.1/cocos/helloworld/
由于我們配置了android(JAVA環(huán)境是前提,我上面沒說)的環(huán)境,所以我們可以將其打包成android的apk供安裝使用
運(yùn)行命令 比較耗費(fèi)時間
cocos compile -p android-m release
web版本的打包
cocos compile -p web -m release
運(yùn)行過程截圖,可以看到在編譯執(zhí)行各種.cpp文件
在編譯完成后是需要輸入keystory的文件路徑的 這個做Android的應(yīng)該都知道,
最后會在項目目錄先生成 runtime文件 里面會包含 android的和html的文件夾,進(jìn)入后可以看到對應(yīng)的文件。
進(jìn)入publish 可以看到生成的文件,我的android打包的時候出現(xiàn)問題應(yīng)該是keystor文件的問題 回頭我再看一下。
進(jìn)入可以看到compile后的文件已經(jīng)生成。只需要將html文件夾改名字發(fā)布到容器訪問就可以了。
go go home!