quick-cocos 3.5 lua banding c++

原创 2016年05月31日 20:47:45

在tools\tolua目录下有个README,里面详述了在各个平台下怎么使用,这里只是稍微记述下windows下面的使用和遇到的问题。

1.首先下载Android NDK,版本r9b以上,自己网上找下,然后配置下环境,系统--高级系统设置--高级--环境变量,在自己用户的环境变量中新建,变量名从genbindings.py中可以看到是NDK_ROOT,变量值就是你Android NDK的路径。

2.下载 Python ,版本2.7.3以上,一定要32位的。官网上面找下http://www.python.org。然后还是配置环境变量,在系统变量中path中,添加2个,1个是python的路径,还有1个是python目录下的Scripts。变量设置好,这里要稍微改下python的东西,因为python默认是ASCII编码,在windows上面直接用pip下载模块的话,会有编码问题。所以在python根目录下的Lib\mimetypes.py 中,在最上面的import后面加上

if sys.getdefaultencoding() != "gbk":
    reload(sys)
    sys.setdefaultencoding("gbk")

注意python的缩进。然后重启cmd,就可以开心的使用pip了。

3.pip是python管理模块包的工具,在cmd中输入pip help 就能看到相关的帮助。根据README中的描述,在python中我们还需要用到2个模块,pyyaml,Cheetah。直接pip install pyyaml ,pip install Cheetah 就可以了。


基本的环境都搭好了,接下来就是开始编写自己的描述文件。在tools\tolua 下面,可以看到有许多的.ini文件,这就是需要的描述文件。随便找一个copy一份,打开,我们只要照着之前的模板,稍微修改就行。

prefix = 改成自己的.int的名字

target_namespace = 在lua中调用的名字,

headers = 这是最重要的,我们自己写的c++头文件的路径

classes = 导出的c++类

接下来再copy一份genbindings.py,改成自己的名字,需要修改的是

        output_dir = 这里可以改成你需要的导出的路径或者不改

cmd_args = {'cocos2dx.ini' : ('cocos2d-x', 'lua_cocos2dx_auto'), \  中有一大堆这样的描述,照着样子,改成自己的 .ini 和.ini的名字,最后lua_cocos2dx_auto随便改,这是生成的中间文件,当然最好是按着一定的格式改,这样方便查找。

最后一定要在本目录下,运行刚刚改写的python来生成中间文件。如果一切顺利的话,将生成的.cpp,.hpp添加到编译器中,重新编译,然后在lua中就可以调用了


这里只是记述一下大致的流程,主要还是备忘下python的编码格式


版权声明:本文为博主原创文章,未经博主允许不得转载。

Lua(8) ——Cocos之_Lua调用C++类

 原文网址:http://blog.51cto.com/shahdza/1568051 【唠叨】     本节要讲的是如果将自己写的C++类注册进Lua环境,让Lua去调用自定义的C++...
  • brucethl
  • brucethl
  • 2018年01月14日 21:22
  • 28

Cocos2d-lua quick3.5final 开发及Android运行环境搭建

Quick3.5final 开发运行环境从0搭建
  • dodouaj
  • dodouaj
  • 2016年08月17日 15:00
  • 2055

【cocos2d-x 3.5】Lua与C++简单交互

(一)lua调用C 1)在VS工程中编写下面两个文件 2)在VS的AppDelegate.cpp中做如下修改 ① 引入头文件#include"LuaTools.h" ② 在applicationDi...
  • slow_liao
  • slow_liao
  • 2015年05月19日 22:03
  • 1162

Rubber-Banding with OpenGL

Introduction This article shows how we can perform rubber-banding in an OpenGL application. Backgr...
  • why_study
  • why_study
  • 2012年11月20日 21:06
  • 1145

cmos sensor camera banding 现象发生原因及相关问题

在某些场景下,使用者可以看到相机画面出现一条一条的滚动暗条纹,如下图片所示,这样的现象,通常是CMOS sensor 曝光时间方面的因素引起的。...
  • u013531497
  • u013531497
  • 2014年05月23日 14:50
  • 2427

【cocos2d-x 3.5】简单Lua 热更新

local title = root:getChildByName("Text") local function onError(errorCode) if errorCode == cc....
  • slow_liao
  • slow_liao
  • 2015年05月19日 21:49
  • 4096

quick-lua新建一个HelloWorld的项目并且编译Android版本

1.下载Qucik-lua引擎 首先下载quick-lua引擎,并且安装在本地,点击下载并安装。 安装完成目录如下, build:编译Cocos2d-x库的各平台工程。 cocos:Cocos2d...
  • u013517637
  • u013517637
  • 2016年12月26日 11:23
  • 2350

cocos2dx-lua 快速截取指定字符数量的字符串

本文写来就是为了方便使用,并没有过多的技术可言!然而,我们不能每次都写一遍这样的代码,我们只是要方便复用,方便在不同的项目中去复用! 我们一起拿来看代码吧: --截取中英混合的UTF8字符串,endI...
  • lxt610
  • lxt610
  • 2017年10月25日 22:08
  • 151

Quick-Cocos2d-X 捋一捋框架流程

猴子原创,欢迎转载。转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢!原文地址: http://www.cocos2dev.com/?p=535一直比较关注Quick Lua...
  • yanghuiliu
  • yanghuiliu
  • 2014年03月24日 16:47
  • 4272

quick-lua中使用本地数据存储

首先在开始的MyApp中添加 GameState=require(cc.PACKAGE_NAME .. ".cc.utils.GameState") 或者GameState = require("f...
  • u010319687
  • u010319687
  • 2015年04月27日 14:51
  • 1520
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:quick-cocos 3.5 lua banding c++
举报原因:
原因补充:

(最多只允许输入30个字)