基于cocos2dx 2.2.2版本号。这几天使用了cocostudio实现了,动画。骨骼动画。UI编辑。粒子效果,尽管有些不足,但已经算是很好了。今天尝试用lua。这个很easy。创建的时候。设置语言为lua。那就能够创建luaproject。

在cocos2d-x-2.2.2\tools\project-creator下执行:

python create_project.py -project test_lua -package com.android.zdhsoft -language lua
xcopy ..\..\cocos2dx\platform\android\java\src\* ..\..\projects\test_lua\proj.android\src /E

就能够创建test_lua,就能够顺利跑起来。

可是我有些代码是C++的,想到在lua下用,感认为用cocos2dx自带的tolua++。会影响现有的Cocos2dx框架。也可能带来潜在的风险。(除了,bug,我一般不乐意改动框架的东西)。并且须要手动绑定的也不多。于是找了几个开源的绑定框架。有luabind,luatinker,ELuna,luabridge,等。luabind须要boost库,这个太头痛了,luatinker,eluna在试用过程都有些问题(有一个不支持派生类和模板)。尽管这两个是最简单的,可是功能也弱了些。最后,用luabridge顺利解决,使用起来也很easy。

以下是下载地址:https://github.com/vinniefalco/LuaBridge

个版本号已经支持lua 5.1.5,只是不支持C++0x11,样例非常丰富。这里有非常多样例,http://vinniefalco.com/LuaBridge/Manual.html

载后,直接解压。把LuaBridge.h,RefCountedObject.h。RefCountedPtr.h和detail下的所有头文件。所有拷贝到classes文件夹。然后在AppDelegate包括luabrigde.h就能够了。

以下是一个用于測试的类

class testA

{

public:

    testA()

    {



    }

    int getValue()

    {

        return 100;

    }

};

以下是绑定代码

    luabridge::getGlobalNamespace(pEngine->getLuaStack()->getLuaState())

        .beginClass<testA>("testA")

        .addConstructor<void(*) ()>()

        .addFunction("getValue", &testA::getValue)

        .endClass();

然后,就能够在你的lua代码使用这个类了。

    local testa = testA ()

    cclog("testa=%d", testa:getValue()) 

如今cocos2dx上面,如今出现了两个重要的lua分支, 一个是quickx,一个cocos-code-ide。quickx提供了一个很强大的lua框架,让你写lua省心省力。

而cocos ide则基于eclipse提供了一个x-man的编辑器,支持lua和js调试。

这让C++情何以堪啊!

[cocos2dx笔记008]cocos2d 用luabridge手动绑定类的更多相关文章

  1. [cocos2dx笔记012]一定简易的UI配置类

    使用cocostudio能够装载编辑好的UI,可是过于复杂.特别是在加截UI后,发现触屏事件有些问题. 假设直接使用程序写死载入UI又过于麻烦.花点时间,添加了一个基于ini的UI配置类,眼下仅仅实现 ...

  2. cocos2dx lua 绑定之二:手动绑定自定义类中的函数

    cococs2dx 3.13.1 + vs2013 + win10 1.首先按照<cocos2dx lua 绑定之一:自动绑定自定义类>绑定Student类 2.在Student类中增加一 ...

  3. cocos2dx——lua自己主动和手动绑定

    [自己主动绑定] 參考:http://my.oschina.net/skyhacker2/blog/298397 主要是通过引擎自带的tools/tolua,主要过程例如以下: 1.编写好要导出的c+ ...

  4. [cocos2dx笔记004] android添加�静态库project

    (基于2.2.2版本号) 这步比較麻烦,不像vs2013那样好设置.參考了非常多文章.还是不能解决这个问题.仅仅有慢慢摸索了.在这里贴出来,希望能让大家能少走点弯路. 还是其于前面的文章提到的myli ...

  5. jQuery学习笔记之DOM操作、事件绑定(2)

    jQuery学习笔记之DOM操作.事件绑定(2) --------------------学习目录------------------------ 4.DOM操作 5.事件绑定 源码地址: https ...

  6. CAS学习笔记五:SpringBoot自动/手动配置方式集成CAS单点登出

    本文目标 基于SpringBoot + Maven 分别使用自动配置与手动配置过滤器方式实现CAS客户端登出及单点登出. 本文基于<CAS学习笔记三:SpringBoot自动/手动配置方式集成C ...

  7. SpringMVC form:form的一个错误(没有传到前台绑定类)

    SpringMVC form:form的一个错误(没有传到前台绑定类) 报错信息: Neither BindingResult nor plain target object for bean nam ...

  8. Typescript 学习笔记四:回忆ES5 中的类

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  9. Django商城项目笔记No.3用户部分-用户模型类

    Django商城项目笔记No.3用户部分-用户模型类 Django提供了认证系统,文档资料https://yiyibooks.cn/xx/Django_1.11.6/topics/auth/index ...

随机推荐

  1. MySQL查看连接数

    MySQL查看连接数 1.查看部分连接数(数目较多时) show processlist; 2.查看所有连接数(数目较多时) show full processlist;

  2. HelloGithub

    <HelloGithub月刊>第一期   <HelloGithub月刊> 因为现在这个项目只有我自己做,只敢叫“月刊”,希望有志同道合者,快点加入到这个项目中来!同时,如果您有 ...

  3. STL的一些泛型算法

    源地址:http://blog.csdn.net/byijie/article/details/8142859 从福州大学资料里摘下来的我现在能理解的泛型算法 algorithm min(a,b) 返 ...

  4. DOM - Element 对象

    http://www.runoob.com/dom/dom-element.html Element 对象 Element 对象代表 XML 文档中的一个元素.元素可以包含属性.其他元素或文本.如果一 ...

  5. poj 3304(直线与线段相交)

    传送门:Segments 题意:线段在一个直线上的摄影相交 求求是否存在一条直线,使所有线段到这条直线的投影至少有一个交点 分析:可以在共同投影处作原直线的垂线,则该垂线与所有线段都相交<==& ...

  6. 常见问题(FAQ) | VPNCUP

    常见问题(FAQ) | VPNCUP 常见问题(FAQ) 关于FAQ 新手开始 登录验证问题 为什么刚注册后,登录VPN服务器提示错误? 免费注册的用户有哪些限制? 为什么连接免费VPN后20分钟自动 ...

  7. 怎样用js得到当前页面的url信息方法(JS获取当前网址信息)

    设置或获取对象指定的文件名称或路径.window.location.pathname 设置或获取整个 URL 为字符串.window.location.href; 设置或获取与 URL 关联的端口号码 ...

  8. uva 1510 - Neon Sign(计数)

    题目链接:uva 1510 - Neon Sign 题目大意:给定n个点,随意三点不共线,而且两两点之间有一条线,给定线的颜色.问说有多少个三角形三边同色. 解题思路:对于每一个点.记录该点黑色边的数 ...

  9. 【网络协议】TCP交互数据流和数据流成块

    前言 建立在TCP协议上的应用层协议有非常多,如FTP.HTTP.Telnet等,这些协议依据数据传输的多少能够分为两类:交互数据类型和成块数据类型. 交互数据类型,如:Telnet,这类协议一般仅仅 ...

  10. JSP网站开发基础总结《九》(转)

    本篇属于附加篇,在之前的总结中给大家提到过一个关于登录状态验证的效果,当时是通过Session对象完成的,今天我查了一下,JSP为我们封装了一个用于过滤用的过滤器类Filter,通过它我们就可以非常轻 ...