位置: 编程技术 - 正文

cocos2dx 3.1 cpp版本转lua版本 mac

发布时间:2024-02-27

推荐整理分享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解密)

  • 个人独资企业要注意什么
  • 增值税专用发票怎么开
  • 税务行政复议包括必须复议自由复议和选择复议三种类型
  • 种植农作物补贴
  • 2020年小规模纳税人增值税起征点
  • 货物运输费用怎么算
  • 公司油票怎么抵扣
  • 小规模没有计提增值税直接缴纳了
  • 公司给员工报销话费怎么做账
  • 财务会计制度名称一般是
  • 自产自销农产品企业所得税
  • 清包工一般纳税人简易计税能开专票
  • 本月征期2021
  • 费用发票的种类
  • 申报增值税附表二代不出数据
  • 自产自销产品如何入库存
  • 建筑业进项税抵扣不足
  • 投资款怎么做会计科目
  • 哪些发票备注栏必须注明
  • 出租房产免收租金,如何缴纳房产税
  • 贷款逾期账务处理流程
  • 一个网页账号在多个电脑登录
  • word从一台电脑考到另一台电脑格式不一致怎么解决
  • 废料收入应如何确定
  • 对外贸易法律的特征包括
  • 企业所得税汇算清缴补缴税款分录
  • 电脑cn是什么意思
  • 其他应收款核算内容
  • PHP:Memcached::cas()的用法_Memcached类
  • 记账凭证不见了怎么办
  • 麦克米伦anki
  • Yii2.0小部件GridView(两表联查/搜索/分页)功能的实现代码
  • 个人咨询服务费怎么交税
  • tcpdump 监听指定端口
  • python del语法
  • 承兑汇票贴现会计分录怎么做
  • 金碟怎么初始化
  • 低值易耗品需要计提吗
  • 什么是合伙企业?它的特点有哪些?
  • 企业发生的咨询费应计入哪个科目
  • 计提的坏账准备计入什么科目
  • 帝国cms使用手册
  • dedecms配置
  • 销售车位怎么找客户
  • 存款对银行经营的意义
  • 资产负债表期末余额是累计数吗
  • 预缴所得税年底处理账务吗
  • 投资收益属于资产嘛
  • 固定资产盘盈为什么计入盈余公积
  • 研发活动发生的费用
  • 员工福利费属于什么会计科目
  • 以前年度损益调整
  • 租房交付确认书
  • 间接人工费用计入什么科目
  • 其他应收款借方负数代表什么意思
  • 打官司收到对方的款,如何做账
  • 买断式买入
  • 支票取钱不是本人要带什么
  • 工业企业产成品库存同比
  • mysql中具体到删某一个数据
  • 解析包出现错误无法安装怎么办
  • Windows Server 2008的节能降耗
  • ssh连接虚拟机centos
  • mac蓝牙怎么连接耳机
  • linux查看当前时间戳
  • win7桌面图标无法拖到任务栏
  • win10预览版和正式版
  • win10系统怎么管理开机启动项
  • Msssrv.exe - Msssrv是什么进程 有什么用
  • 64位win7安装kb3038314补丁更新失败临时解决方法
  • js简单实现点击按钮商品加入购物车
  • 电脑qq清理
  • 人机交互编程
  • jquery1.8
  • jquery添加兄弟元素
  • bat脚本%1
  • 你知道的,是我的兄弟 我要把天赋
  • psi python
  • 得之于社会要回馈社会的感想
  • 煤炭资源税税率选煤税率多少黑龙江
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号