zoukankan      html  css  js  c++  java
  • cocos ide使用binding-generator导出来的c++类

    time:2015/03/19

    cocos版本:3.2

    描述:用了ide运行一个实例[1]的时候需要增加c++类,正确导出来之后,直接使用vs2012启动是没有问题的,但是使用ide启动却提示找不到模块

    学习:

    (1)使用3.2自带的tolua把自定义类导出来,并作为一个模块添加到lua环境中,参考[2],不多说了。

    (2)使用

    * 使用vs2012直接启动没有问题

    * 使用ide直接启动,提示找不到模块

    解决:

      把ide的启动程序换成vs2012编译的exe就可以了。

    * 项目-->属性中最后一个 --> "运行/调试设置" -->双击右边打开启动配置

    * win7/win8 -->runtime路径中修改PrebuiltRuntimeLua.exe为你自己的编译的exe

    总结:
    (1)启动程序的实质只是提供了一个跨平台的启动入口,另外做的一件事情就是构建了lua的环境,同时把我们自定义的类作为一个模块加到lua环境中

    (2)如此说来,直接启动vs2012是没有问题的,因为从main.cpp到AppDelegate.cpp执行一遍,就会运行到自己加的注册模块函数,所以自己添加的模块就自然在lua环境里面了

    (3)但是,ide根本就不需要工程下面的frameworks下面的runtime-src,从创建新lua工程就看到,一开始可以不选生成c++代码

    (4)所以说,其实默认的PrebuiltRuntimeLua.exe程序和我们自己生成的.exe是一样的东西,但是我们自己生成的exe还包含了我们自定义c++类的模块注册到lua环境的代码,而且这才是我们想要的

    (5)over!

    参考:

    [1]http://cn.cocos2d-x.org/tutorial/show?id=1998

    [2]http://my.oschina.net/guyson/blog/338375

  • 相关阅读:
    bzoj1096: [ZJOI2007]仓库建设
    bzoj3289: Mato的文件管理
    bzoj1878: [SDOI2009]HH的项链
    bzoj1295: [SCOI2009]最长距离
    bzoj1056: [HAOI2008]排名系统 && 1862: [Zjoi2006]GameZ游戏排名系统
    vijosP1026毒药?解药?
    bzoj1293: [SCOI2009]生日礼物
    bzoj1483: [HNOI2009]梦幻布丁
    PCB开窗
    3W原则
  • 原文地址:https://www.cnblogs.com/pk-run/p/4350500.html
Copyright © 2011-2022 走看看