位置: 编程技术 - 正文

cocos2dx 3.1 cpp版本转lua版本 mac

编辑:rootadmin

推荐整理分享cocos2dx 3.1 cpp版本转lua版本 mac,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

项目最开始使用的c&#;&#;开发,第一版上线后总结经验,感觉走了很多弯路,所以第二版开发我决定将项目转成lua。使用c&#;&#;开发主要遇到这几个麻烦:一,招人不易,我们是小公司,没法用土豪公司的待遇福利来吸引熟手,只能招实习生或刚毕业的,这部分人c&#;&#;又不是很熟练,写出来的代码难免有各种问题,而找个会写lua的就简单多了。二,c&#;&#;的强大可较好的体现在架构上,可以方便运用各种设计模式,但我们项目开发时间紧,架构几乎没有,所以c&#;&#;的优势反而不如lua体现的好。三,最重要的一点,热更新啊。。。第一版没有代码热更新,各种发版本,各种玩家流失,多么痛的领悟

在转lua的过程中主要有三点问题:一,tolua的使用。二,luajit对位机器的支持。三,转android

一,tolua的使用

tolua工具在cocos/tools/tolua目录下面

1.按照README.mdown文件中的说明,一步步安装所需环境组件

2.修改genbindings.py中的output_dir和cmd_args,output_dir是生成的tolua文件的位置,如图

3.新建自己的ini文件(参考其他的ini文件),ini文件名和上图中的1相同,第一行的名字要和上图中的2相同,然后其他参数都有详细说明,可按需配置,用不到的置空即可。我用到的配置参数如下图

cocos2dx 3.1 cpp版本转lua版本 mac

4.运行genbindings.py脚本生成.h .cpp文件,加入到工程中,最后在加载lua文件前别忘了注册你导出的lua接口,如下图

二,luajit对位机器的支持

3.1版本的luajit还没有支持位机器,包括arm,x_,使用iphone6,6plus真机和模拟器时链接各种报错,使用ipone5倒是可以,可就这么打得包appstore也审核不过啊。所以google后,在这个blog找到了答案点击打开链接,这里面说的很详细了,我补充一句,在other linker flags中增加参数 -pagezero_size -image_base 按下图配置即可。

三,转android

已完成,可能过程对其他项目参考价&#;不是很大,因为我是通过研究build_native.py脚本,然后修改几个参数,修改android.mk等等,这里就不赘述了,如有兴趣,可留言

过程中遇到了几个错误:

一,[LUA ERROR] [string "require "DeprecatedEnum.lua""]

这是因为cocos引擎用到的lua脚本没有复制到asset目录下,打开编译android的脚本文件(我用到的是build_native.py),在copy_resources函数下添加复制lua资源的代码,记得后面的路径改成自己项目的相对路径

二,dvmFindClassByName rejecting 'org.cocos2dx.cpp.AppActivity'

原因是通过jni调用java函数时没有找到org.cocos2dx.cpp.AppActivity的类,因为我的包名已经改成org.coco2dx.lua了,所以找不到。。。

在cocos2dx中解析CSV文件 本文主要是用C简单的实现了cocos2dx中对CSV文件的解析,由于能力有限,写的不好的地方提出来共同学习共同进步,这里参考了笨木头使用LUA解析CSV文件

返回场景和音乐 播放背景音乐,实时音乐#includeSimpleAudioEngine.hCocosDenshion::SimpleAudioEngine::sharedEngine()-playEffect(pew-pew-lei.wav);//实时音乐CocosDenshion::SimpleAudioEngine::sharedEngine()-

Cocos2dx CCSprite CCSpriteFrame CCTexture2D CCAnimation学习总结 1.CCTexture2DCCSpriteFrameCCSprite三者之间的关系CCTexture2D是贴图纹理,是缓存到GPU中的图片数据。CCSpriteFrame是相对于动画来说的概念,代表动画中帧,CCSpriteFr

标签: cocos2dx 3.1 cpp版本转lua版本 mac

本文链接地址:https://www.jiuchutong.com/biancheng/368956.html 转载请保留说明!

上一篇:《跑跑跑》(五)——添加障碍物,Tiled障碍层的使用(跑跑跑游戏)

下一篇:在cocos2dx中解析CSV文件(cocos2dx解密)

  • 农业免税收入怎么填纳税申报表
  • 宁波财税网会计之窗官网
  • 股权转让实缴和认缴的区别
  • 购买冰箱微波炉注意事项
  • 收入入账会计分录
  • 个人承包工程如何避税
  • 国际货物运输免征所得税
  • 培训产生的住宿费算培训费吗
  • 分支机构是否需要进行企业所得税汇算清缴申报
  • 出口无法收汇怎么办
  • 业务招待费比例扣除额
  • 个人独资企业缴纳个人所得税
  • 新公司第一个月报税怎么弄
  • 工地上汽车加油怎么加
  • 企业减免6%的税的营业范围有哪些?
  • 增值税发票开户行填简称是被允许的吗?
  • 农产品增值税优惠政策2021
  • 离职补偿金需要交工会经费吗
  • 房地产开发企业会计科目
  • 知识产权代理公司怎么盈利
  • 企业固定资产清单表格
  • 企业购买理财产品的会计分录
  • 买免税产品
  • 跨年度的暂估入库账务处理
  • linux中!
  • 可转债溢价率多高为好
  • 报销冲借款是什么意思
  • mid文件和midi文件
  • 计提五险一金的分录怎么写
  • KbdTray.exe - KbdTray是什么进程 有什么作用
  • window10为什么右键就卡住
  • 出售债券税费处理方法
  • Delete `␍` 最简单最有效的解决方法和解释(VScode)
  • 什么是进项票什么是成本票
  • 关于古老的jsp页面的知识汇总(超详细)
  • php环境怎么搭
  • php static变量
  • 增值税普通发票和专用发票有什么区别
  • 公司内部现金管理制度
  • 织梦图集的使用教程
  • 税务局返还手续费
  • 滴滴发票抬头怎么修改
  • 如何利用远期交易保值
  • macos mysql安装
  • 往来账款应该怎么记账
  • 员工自己全额承担社保费用要计提吗
  • 收到的税费返还怎么算
  • 政府会计制度下基建账
  • 土地使用权的界定
  • 工程物资残料价值
  • 资本公积形成的原因有哪些
  • 内账应收应付怎么对账
  • 应交税金为负数应该填在资产负债表哪一栏
  • 发票什么情况下可以作废
  • 车辆购置税在哪个app交
  • 转回小规模
  • 营业外收入是否影响营业利润
  • 基金账户托管
  • 罚金和罚款的区别怎么记
  • win10周年纪念版
  • win10未检测到任何网络硬件
  • win7右下角无线网络连接图标不见了
  • win10系统如何设置锁屏壁纸图片
  • opengl裁剪平面
  • python 多线程调用
  • unity 3d书籍
  • 删除默认共享的文件夹
  • 注释标签的内容会显示在浏览器窗口中
  • 命令行批处理文件
  • css中清除浮动的目的有哪些
  • linux sed awk区别
  • unity3d2019教程
  • [置顶] 汉诺塔的原理剖析以及递归的解决办法
  • 基于python语言
  • jquery动态
  • unity iphone
  • 滴滴发票怎么查行程
  • 通用申报表水利基金怎么填
  • 辽宁网上怎么申请港澳签证流程
  • 汽车发票含税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设