zoukankan      html  css  js  c++  java
  • cocos2d-x中CCEditbox导出到lua

    自从工作后感觉时间较少(每天工作9-22,晚上就不想动了,早上想多睡点),工作中用的是

    cocos2d-x。cocos2d-x是一款手机游戏引擎,虽然支持lua,但和love2d相比非纯lua游戏引

    擎,不过很容易把C++里的类导出到lua。(虽然cocos2d-x比love2d更流行,工具和教程更

    多,我还是会继续更新love2d相关的,因为特别喜欢love2d的小巧。)

    cocos2d-x集成了tolua++,tolua++是一款把C++类导出到lua的工具。该工具使用的一般

    流程是:

    1、制作pkg文件,pkg文件就是你需要要导出的函数和类,基本和头文件一致

    2、使用tolua++.exe 从pkg文件生成其对应的C/C++源文件,如tolua++-o test.c test.pkg

    3、把生成的源文件加入工程,并在链接里加入lua和tolua++的库

    其实tolua++就是自动帮我们完成了C/C++到lua的绑定,之后我们就可以在lua里调用C/C++

    里的函数。

    在cocos2d-x里就比较方便了,只需要在“tools olua++”,里添加你要导出的类的pkg,

    同时在Cosos2d.pkg里包含你自己的pkg,即$pfile "test.pkg",还有在LuaCocos2d.h里添加

    这个类对应的头文件,即#include "test.h",最后运行 build.bat。

    注意一下类的继承,如果你导出的类是A的子类,那么也要把A类导出

    下面是CCEditBox导出到lua的pkg,CCEditBox涉及到了多个类所以较长。

    CCScale9Sprite.pkg,先要导出CCScale9Sprite

    CCEditBox继承的几个类我全放到CCEditBox.pkg里了

  • 相关阅读:
    案例 :表格隔行变色效果
    案例:百度换肤
    案例:排他思想(算法)
    JS运动基础
    DOM的高级应用
    jsDOM操作应用
    js中的DOM基础
    js实现向左向右无缝轮动
    JavaScript定时器的使用
    JavaScript基础2
  • 原文地址:https://www.cnblogs.com/xdao/p/3207912.html
Copyright © 2011-2022 走看看