• quick-cocos2d-x 创建自定义lua绑定c++类


    内容主要参考 “在quick-cocos2d-x中添加自定义的类给lua使用” ( http://www.codeo4.cn/archives/746)

    1. quick-coco2d-x 使用 tolua++ 来简化lua绑定c++类操作,mac下用到了 /usr/local/bin/tolua++ ,可以把bin/mac下的可执行程序复制过去,省得编译安装了。

    2. 在 lib/cocos2dx_extra/extra 下创建目录并实现c++类,例如 mylib/foo.h  mylib/foo.cpp

    3. 修改 /lib/cocos2dx_extra/extra/luabinding/cocos2dx_extra_luabinding.tolua ,在开头加入 

        $#include "mylib/foo.h"

        在文件尾部加入类定义,遵循以下原则:

        1) enum keeps the same
        2) remove CC_DLL for the class defines, pay attention to multi inherites
        3) remove inline keyword for declaration and implementation
        4) remove public protect and private
        5) remove the decalration of class member variable
        6) keep static keyword
        7) remove memeber functions that declared as private or protected 

    4. 执行  lib/cocos2dx_extra/extra/luabinding/build.sh 生成类的lua绑定类,就是  /lib/cocos2dx_extra/extra/luabinding/cocos2dx_extra_luabinding.cpp,正常应该在文件里看到foo类

    5. 如果是Android项目,修改 lib/cocos2dx_extra/proj.android/Android.mk 

        在 LOCAL_SRC_FILES 里加入源文件 ( ../extra/mylib/foo.cpp )

        如果用到第三方库,加入到 LOCAL_WHOLE_STATIC_LIBRARIES 和 $(call import-module,libxxx)

    6. 编译项目

  • 相关阅读:
    枚举和字符串之间的转换 [转帖]
    escape,encodeURI,encodeURIComponent函数比较[转帖]
    .net中的Provider模式 [转帖]
    ogg转到mp3
    四季养生(樊正伦教授)
    JavaScript高阶之路
    Python初识
    理解error和exception之间的区别(转)
    一些有用的话
    《爱在雨季》片尾曲
  • 原文地址:https://www.cnblogs.com/xiaoleiel/p/8301185.html
Copyright © 2020-2023  润新知