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