quick-cocos 3.5 lua banding c++

quick-cocos 3.5 lua banding c++在tools\tolua目录下有个README,里面详述了在各个平台下怎么使用,这里只是稍微记述下windows下面的使用和遇到的问题。1.首先下载AndroidNDK,版本r9b以上,自己网上找下,然后配置下环境,系统–高级系统设置–高级–环境变量,在自己用户的环境变量中新建,变量名从genbindings.py中可以看到是NDK_ROOT,变量值就是你AndroidNDK的路径。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

在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的编码格式

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184009.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PHP和Python如何选择?或许可以考虑这三个问题

    PHP和Python如何选择?或许可以考虑这三个问题

    2021年10月10日
    35
  • 012路规律怎么看_双元素集合怎么判断

    012路规律怎么看_双元素集合怎么判断堆题目链接将一系列给定数字顺序插入一个初始为空的小顶堆H[]。随后判断一系列相关命题是否为真。命题分下列几种:x is the root:x是根结点;x and y are siblings:x和y是兄弟结点;x is the parent of y:x是y的父结点;x is a child of y:x是y的一个子结点。输入格式:每组测试第1行包含2个正整数N(≤ 1000)和M(≤ 20),分别是插入元素的个数、以及需要判断的命题数。下一行给出区间[−10000,10000]内的N个要被

    2022年8月9日
    9
  • 栈与队列的区别_栈和队列

    栈与队列的区别_栈和队列1、队列先进先出,栈先进后出。2、对插入和删除操作的"限定"不同。栈是限定只能在表的一端进行插入和删除操作的线性表。   队列是限定只能在表的一端进行插入和在另一端进行删除操作的线性表。  3、遍历数据速度不同。栈只能从头部取数据,也就最先放入的需要遍历整个栈最后才能取出来,而且在遍历数据的时候还得为数据开辟临时空间,保持数据在遍历前的一致性。队列则不同,它基于地址指针…

    2025年7月11日
    2
  • CRC32 Hash PK Murmur Hash「建议收藏」

    CRC32 Hash PK Murmur Hash「建议收藏」硬件指令实现的CRC32运算在多款主流CPU上性能超越Murmurhash,碰撞性能基本一致,多数场景可以使用CRC32硬件指令优化HASH算法提升性能

    2022年10月10日
    2
  • 《前端运维》一、Linux基础–11服务

    首先服务的概念,对于linux服务器来说,其中大多数的软件都算是服务,比如nginx、mysql、Jenkins等等。下面我们就来学习一下linux中有关服务的一些内容。一、服务简介和分类1、运行

    2022年3月25日
    36
  • FRP内网穿透_花生壳内网穿透6元

    FRP内网穿透_花生壳内网穿透6元在Web应用上线前都会在内网进行测试,而有些功能是只有在公网上才能做测试的,比如为APP提供的接口等等。所以经常需要在正式上线之前将内网的服务器映射到公网上去。也就是赋予内网上服务器一个域名,开放几个端口。一般来说都使用内网穿透工具完成这个操作,比如在公网上购置一台服务器,不需要配置很高,只要流量够用就行。然后在公网服务器上配置穿透工具的服务端,比如ngrockc或者frp,然后在能接通公网的内网…

    2025年11月7日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号