位置: 编程技术 - 正文

cocos2dx移植eclipse后,用ndk来开发,实现放弃vs,eclipse写c++代码(cocos2d安装教程)

编辑:rootadmin

推荐整理分享cocos2dx移植eclipse后,用ndk来开发,实现放弃vs,eclipse写c++代码(cocos2d安装教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2dx移植鸿蒙app,cocos2dx 4.0环境搭建,cocos2dx安装教程,cocos2d安装,cocos2d-x安装,cocos2d-x安装,cocos2d安装,cocos2dx移植鸿蒙app,内容如对您有帮助,希望把文章链接给更多的朋友!

1.声明:本博文的阅读人群适用于成功在eclipse里编译运行过cocos2dx项目的人员

2.我所用的游戏引擎是cocos2dx2.2.2版本

3.ndk的版本是android-ndk-r8d

4.我把我的cocos2dx项目移植到eclipse,打开我在vs中写好的类,发现有的类中有以下的情况,这实际不算是问题,只是我导入的项目中

找不到一些东西,你把本类关掉,运行程序发现出错,但是项目上显示并没有错,这时你把工程关掉,重新编译是可以用的

5.写到这里,有人可能会问,既然已经提供了上面的解决方法,不就好了吗,但是你不觉得,那样会很累吗,稍微修改一点东西都要关掉工程,重新再来,

关键点是报这样错误,会让你怀疑你填入代码的真确性,下面我来介绍一种方法,就是抛弃掉cocos2dx项目自带的cocos2dx,Classes等文件夹,用ndk直接编译,这样还能调试

6.把你的Classes文件夹复制到jni文件夹下,并修改Android.mk文件

修改成这样的原因很简单,大家仔细查看下目录结构会发现Android.mk里面的目录结构是以jni为根目录的,原来的Classes是在jni目录的前俩级目录的,现在你的目录结构改变了,里面的配置信息当然要变了

cocos2dx移植eclipse后,用ndk来开发,实现放弃vs,eclipse写c++代码(cocos2d安装教程)

7.当然修改到这里离我们的目标还是很远的,下面右击你项目,选择properties,选择c/c&#;&#; Build修改如下

这一步的目的是为了debug

8.展开c/c&#;&#; Build选择Tool Chain Editor,配置信息如下

请注意关键点 这个下拉框里面是有No Toolchain选项的,恭喜你你是幸运的,因为还可能有下面情况的

发现了吗 No Toolchain选项是没有的,这个就是悲剧的一种情况了,也是博主遇到的,也是让我下定决心写这篇博客的原因,当遇到上图的情况,你整个项目就废了,不管你怎么修改(可能是我不了解)不能编译成功项目了,项目报错如下:

9.这个错误,按我的理解就是关键的命令找不到,出现了编译的问题,这个问题博主是这样解决的:

a.先提一下,大家可能重来没有关注过你项目下proj.android文件夹下的.cproject文件吧,这个文件实际上是项目的一个配置文件,当我们项目配置做出修改h后,信息就保存在这个文件里,No Toolchain选项没有的问题就出现在这里,配置文件里没有,那么我就附上一篇正确的配置文件:

<?xml version="1.0" encoding="UTF-8" standalone="no"?><?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage"><storageModule moduleId="org.eclipse.cdt.core.settings"><cconfiguration id="com.android.toolchain.gcc."><storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.android.toolchain.gcc." moduleId="org.eclipse.cdt.core.settings" name="Default"><externalSettings/><extensions><extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/><extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/><extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/></extensions></storageModule><storageModule moduleId="cdtBuildSystem" version="4.0.0"><configuration artifactName="${ProjName}" buildProperties="" description="" id="com.android.toolchain.gcc." name="Default" parent="org.eclipse.cdt.build.core.emptycfg"><folderInfo id="com.android.toolchain.gcc.." name="/" resourcePath=""><toolChain id="com.android.toolchain.gcc." name="com.android.toolchain.gcc" superClass="com.android.toolchain.gcc"><targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.android.targetPlatform." isAbstract="false" superClass="com.android.targetPlatform"/><builder arguments="ndk_debug=1" buildPath="${ProjDirPath}" command="ndk-build" id="com.android.builder." keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Android Builder" superClass="com.android.builder"><outputEntries><entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="outputPath" name="obj"/><entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="outputPath" name="libs"/></outputEntries></builder><tool id="com.android.gcc.compiler." name="Android GCC Compiler" superClass="com.android.gcc.compiler"><inputType id="com.android.gcc.inputType." superClass="com.android.gcc.inputType"/></tool></toolChain></folderInfo><sourceEntries><entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="jni"/></sourceEntries></configuration></storageModule><storageModule moduleId="org.eclipse.cdt.core.externalSettings"/></cconfiguration></storageModule><storageModule moduleId="cdtBuildSystem" version="4.0.0"><project id="legend.null." name="legend"/></storageModule><storageModule moduleId="org.eclipse.cdt.core.pathentry"/><storageModule moduleId="refreshScope" versionNumber="1"><resource resourceType="PROJECT" workspacePath="/COCOSBUDIER"/></storageModule><storageModule moduleId="scannerConfiguration"><autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/><scannerConfigBuildInfo instanceId="com.android.toolchain.gcc.;com.android.toolchain.gcc..;com.android.gcc.compiler.;com.android.gcc.inputType."><autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.android.AndroidPerProjectProfile"/></scannerConfigBuildInfo><scannerConfigBuildInfo instanceId="0.;0..;com.android.gcc.compiler.;com.android.gcc.inputType."><autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.android.AndroidPerProjectProfile"/></scannerConfigBuildInfo></storageModule><storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/></cproject>

替换掉以后,更新项目,再次查看,发现No Toolchain选项出现了,恭喜你离成功已经很近了,编译项目,还是发生错误

意思是NDK_MODULE_PATH设置不对

这里我们不设置NDK_MODULE_PATH,因为设置了它会让我们无法调试C&#;&#;代码,解决上面问题的办法是:把编译过程中需要的库拷贝到系统默认的NDK_MODULE_PATH里,跟我来做复制cocos2d-2.1rc0-x-2.1.3目录下的cocos2dx,CocosDenshion,extensions,external这4个目录到你的NDK的sources目录下,以我的电脑为例,就是/android/android-ndk-r8e/sources复制cocos2d-2.1rc0-x-2.1.3/cocos2dx/platform/third_party/android/prebuilt目录的所有到NDK的sources目录下这样我们复制到NDK的sources目录下的目录一共有cocos2dx,CocosDenshion,extensions,external, libcurl,libjpeg,libpng,libtiff,libwebp这几个回到eclipse,再次Project->Build All,应该会编译成功

这里我引用了

cocos2d-js版本A*算法 A*算法的东西网上讲了很多~但还是不可避免的要去研究一下,cocos官网上有一个cocos2dx版本的A星算法(cocos2d-xA星算法),正好拿来改造一下,顺便踩踩cocos2

关于加载cocos2dx动画问题,跳转页面后回来不显示,报错找不到资源 用cocostudio做场景和动画,确认文件目录和文件都存在,在屏幕上显示不了。关于cocos2d:Cann'tfindCCSpriteFramewithelf3.png.Pleasecheckyour.plistfilecocos2d:Cann'tfindCCSprit

coco2dx 中常用的宏定义 CCAssert(cond,msg);断言表达式cond为真,如果cond不为真的话就打印msg的信息遍历ArrayDictionary的宏//可以通过源代码分析到这个宏的意思就是遍历Array#defineCCARRA

标签: cocos2d安装教程

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

上一篇:对qucik cocos2dx lua SocketTCP的再一次封装,导入全局实例,包含自定义事件

下一篇:cocos2d-js版本A*算法(cocos js)

  • 进项税额比销项税额多怎么填申报表
  • 设计印刷合同
  • 药酒消费税计税依据
  • 运输途中的合理损耗
  • 实收资本增加印花税税目
  • 计提代扣个人工会经费怎么做账
  • 公司租车要交什么费用
  • 税金及附加包括个人所得税吗
  • 已付款已收货但发票未到账务处理怎么做
  • 增值税减免备案改备查后续管理
  • 事业单位取暖费标准
  • 出口收汇核销单取消了吗
  • 企业销售现金折扣
  • 一般纳税人汽车修理费可以抵扣吗
  • 专用发票扣税
  • 红利所得分配也要交税吗
  • 减免税款余额方法有哪些
  • 外经证过期没报验
  • 广告费扣税
  • 未开票的增值税发票能验旧吗
  • 软件进项税额分摊方式
  • 公司章程出资时间怎么填写
  • 基础研究投入费用包含工资吗
  • 企业所得税税率2.5% 5% 25%
  • 汇回投资方的现值怎么算
  • 支付股息如何做账务处理
  • 什么原因导致血脂高
  • 收到政府返还土地款 奖励 土地增值税
  • 公司收到项目的现金
  • 如何实现php图片打印
  • 新准则与旧准则比较有哪些新变化
  • phpcgi远程代码执行漏洞
  • 生产型企业出口退税退的是哪部分的税
  • 单位缴费基数申报提交了能改吗
  • php确认弹窗
  • php ajax请求
  • 2021年前端面试
  • gpt3模型大小
  • 集团对子公司拨款的规定
  • 利润的调增和调减
  • 企业分立股权比例发生变化的税务处理
  • 如何用织梦在本地搭建网站
  • 一般纳税人销售旧货适用征收率是?
  • sqlserver2008不存在或拒绝访问怎么办
  • 贷方账户日累计金额超限什么意思
  • 新领的发票怎么导入uk开票系统
  • 农产品税率2020年计算
  • 自来水厂被收购,员工怎么办
  • 在建工程科目核算只针对固定资产吗
  • 房租收入应如何纳税
  • 企业职工食堂就餐收费
  • 超市现金券模板
  • 人们对餐饮业的要求
  • 本年利润在借方表示什么意思
  • 装修公司完工交付文案
  • 盈余公积和未分配利润合起来构成
  • 房地产开发企业成本核算方法
  • mysql 5.7.12 winx64安装配置方法图文教程
  • win7怎么清除记录
  • centos7 home
  • 清除cmos后电脑不启动
  • 重装win7旗舰版系统教程
  • linux open o_direct
  • win10新版cortana
  • vi编辑器的三种模式
  • hpz12进程
  • ubuntu查cpu信息
  • win10win8
  • window.location.reload白屏
  • adt Failed to create the Java Virtual Machine.
  • android canvas scale
  • debug命令及其基本操作
  • Node.js中的什么模块是用于处理文件和目录的
  • Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值
  • 如何搭建应用服务器
  • 消费税是含税价
  • 开票金额有限额吗
  • 房屋租赁管理部门制发的《房屋租赁证》
  • 个人养老金没有开立资金账户
  • 税务约谈的法律依据
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设