cocos2d-lua整合到ios工程,即在ios原生应用中可以直接玩cocoslua开发的游戏

来源:互联网 发布:编程用什么手机 编辑:程序博客网 时间:2024/05/22 06:23

前段时间配合其他部门把cocostudio做的动画拿到ios原生引用中播放,把cocos2d-x做成静态库并保留了一个头文件给ios那边调用,可以实现ios调用cocos2d-x,最近又要实现cocos2d-lua版本的,思路差不多,不过最后是调用的脚本,可以把脚本直接看做资源,坑也有几看踩踩填填就好啦。

我用的是cocos2d-x 3.12版本,如其他版本遇到不同的问题,也可以及时反馈,大家一起解决 ,共同进步哈。

1、生成libluacocos2d iOS.a 静态库,步骤如下

(1)、如图"001"打开cocos2d工程目录下的cocos2d_lua_bindings.xcodeproj


(2)、如图"002"这里选择libluacocos2d iOS ,然后点击Edit Scheme 选择release模式编译


(3)、不出意外的话,编译成功后,如图位置会出现libluacocos2d iOS.a文件,选中它,在如图"003"最右边的位置会看到文件位置,然后打开Finder ,按下command + shift + G进入文件搜索,如图"0031"把刚刚那个文件地址粘贴进去,找到libluacocos2d iOS.a文件如图"0032",拷贝到如图所示工程目录下的cocos2d-x/build目录下如图"0033"。





2、生成libsimulator.a静态库,步骤如下

(1)、如图"2(1)"打开cocos2d工程目录下的libsimulator.xcodeproj


(2)、同(1)步骤生成libsimulator.a静态库,也拷贝到工程目录下的cocos2d-x/build目录下

3、生成libcocos2d.a静态库,步骤如下

(1)如图"3(1)"把Classes文件拷贝到工程目录下的cocos2d-x/build目录下,打开cocos2d_libs.xcodeproj


(2)如图"3(2)" "3(21)"添加Classes到工程中,这里按图示勾选



(3)

同样的方式把之前生成的

libluacocos2d iOS.a

libsimulator.a

也添加进来

(4)如1(2)的步骤选择release模式编译

(5)如图"3(5)"选中PROJECT后在User Header Search Paths里添加相应头文件目录,不然会出现各种找不到头文件的错误。


(6)如图"3(6)"选中TARGETS后在User Header Search Paths里添加相应头文件目录。


(7)如图"3(7)"把.m .cpp文件都拖到Compile Sources里面


(8)如图"3(8)"把animationManager.h文件拖到Header的public中,其他头文件拖到Project里


(9)执行Run编译,不出意外的话会生成一个如图"3(9)"libcocos2d iOS.a文件


4、(1)如图"4(1)"拷贝静态库libcocos2d iOS.a和头文件AnimationManager.h到ios项目工程根目录下


(2)并添加到项目中如图"4(2)".


(3)如图"4(3)"根据cocos2d工程给ios工程添加相应的库


(4)把cocos2d-lua工程下的Resources整个拷贝到ios工程根目录下,以group的方式如图"4(4)"导入Resources,删除掉里面的文件,

再把里面的文件包括src和res等以reference的方式添加进来如图"4(42)",使其文件夹变成蓝色(重点)如图"4(43)"




(5)如图"4(5)"在需要调用cocos2d的类中导入头文件AnimationManager.h,并调用相应接口如图"4(51)";



(6)如图"4(6)"修改当前调用的类的后缀名为.mm


(7)如图"4(7)"注意修改模式为release


(8)在other linker flags中添加-pagezero_size 10000 -image_base 100000000参考https://segmentfault.com/a/1190000005021419

(9)运行在这里会调用cocos2d接口

0 0
原创粉丝点击