本篇文章給大家分享的是有關(guān)C++與Lua實(shí)現(xiàn)交互的原理是什么,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)是一家網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站,提供網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),網(wǎng)站制作,建網(wǎng)站,按需網(wǎng)站策劃,網(wǎng)站開發(fā)公司,自2013年創(chuàng)立以來是互聯(lián)行業(yè)建設(shè)者,服務(wù)者。以提升客戶品牌價(jià)值為核心業(yè)務(wù),全程參與項(xiàng)目的網(wǎng)站策劃設(shè)計(jì)制作,前端開發(fā),后臺(tái)程序制作以及后期項(xiàng)目運(yùn)營并提出專業(yè)建議和思路。具體步驟:
1,找到cocos自帶的綁定工具腳本文件genbindings.py,在cocos工程的frameworks/cocos2d-x/tools/tolua這個(gè)目錄下,把這個(gè)文件打開。
2,在打開的genbindings.py文件下面找到這么一段代碼:
這里就是運(yùn)行這個(gè)腳本會(huì)自動(dòng)生成lua綁定代碼的所有對(duì)象和這些對(duì)象所在的目錄與綁定代碼生成的目的路徑,#是注釋,通過它指定只生成修改過的模塊的綁定代碼。
3,運(yùn)行g(shù)enbindings.py,打開命令行工具,cd到這個(gè)目錄,再在當(dāng)前目錄運(yùn)行這個(gè)腳本。(1,cd + tolua目錄路徑 2,./genbindings.py)
4,xcode重新編譯下c++代碼,綁定成功。
1,寫好自定義類,我們一般把這個(gè)類放在Classes目錄,我自己項(xiàng)目的目錄如下:
2,寫好這個(gè)類的.ini配置文件,copy其它的.ini配置,只需要改下類名空間,路徑等,多個(gè)類寫一個(gè)配置里信息用空格隔開。具體示意圖如下:
我的配置文件:
配置文件主要修改地方:
3,運(yùn)行g(shù)enbindings.py腳本,就會(huì)在指定目錄自動(dòng)生成自定義類綁定到lua的代碼。
4,最后是把生成的綁定代碼注冊(cè)到lua環(huán)境棧,如圖所示:
cocos AppDelegate.cpp里的這個(gè)代碼完成的創(chuàng)建lua環(huán)境棧和注冊(cè):
注意事項(xiàng)
1,自己新增的自定義類,打包到andriod上時(shí),需要修改安卓的打包配置,把新增的文件添加進(jìn)去(不光針對(duì)這里,所有打安卓包,新增的東西都是要加入到這個(gè)配置中才會(huì)拷貝)。示意圖如下:
2,mac終端中執(zhí)行g(shù)enbindings.py這個(gè)腳本,如果報(bào)“ImportError: No module named yaml”這個(gè)錯(cuò)誤,解決方式是:在終端中逐個(gè)輸入:以下3句命令,mac會(huì)自動(dòng)幫我們下載安裝這3個(gè)東東,安裝完畢就可以了。
在終端分別逐行輸入以下內(nèi)容:
sudo easy_install pip sudo pip install PyYAML sudo pip install Cheetah
以上就是C++與Lua實(shí)現(xiàn)交互的原理是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。