【Cocos2d-x】绑定C++自定义类到Lua

tolua++简介

tolua++工具所在目录:cocos2d-x-2.2.1\tools\tolua++, 在目录下有一个README文件,打开有关于这个工具的介绍与使用说明。

工具描述: Generating the lua<-->C bindings with tolua++, tolua++用于生成lua与C之间交互的绑定文件。


通过使用该命令生成绑定文件  :tolua++.exe -L basic.lua -o LuaCocos2d.cpp Cocos2d.pkg,新生成的LuaCocos2d.cpp文件将会覆盖旧的。

LuaCococs2d.cpp文件所在路径:cocos2d-x-2.2.1\scripting\lua\cocos2dx_support。

在LuaCocos2d.cpp文件中完成我们自定义类的注册,然后才能在Lua中使用我们C++中的自定义类。


tolua++工具的使用

环境说明:

系统:win7

工程:cocos2d-x lua工程

开发工具:vs2010


自定义类


类声明如下:SpriteFactory.h

#ifndef _SPRITE_FACTORY_H_ 
#define _SPRITE_FACTORY_H_ 

#include "cocos2d.h"

USING_NS_CC;

class SpriteFactory{
public:
	static void createSprite(CCLayer* layer);
};


#endif


类实现如下:SpriteFactory.cpp

#include "SpriteFactory.h"

void SpriteFactory::createSprite(CCLayer* layer){
	//创建一个CCLayerColor
	CCLayer* addLayer = CCLayerColor::create(ccc4(200,100,100,255));
	addLayer->setContentSize(CCSizeMake(layer->getContentSize().width/2,layer->getContentSize().height/2));
	addLayer->setPosition(ccp(layer->getContentSize().width/2,layer->getContentSize().height/2));
	//添加到目标Layer
	layer->addChild(addLayer);
} 

项目结构如下:



编写pkg文件


pkg文件的编写,需要遵循以下规则:

2. Writing .pkg files
    1) enum keeps the same                                

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值