cocos2d-x在App中的应用
cocos2d-x是一个应用广泛的开源游戏引擎,主要是应用与开发2D游戏,开源运行于多个平台,如果只是针对于移动端平台而言,可以运行于android和ios平台。
cocos2d-x目前的版本是3.17,支持C++,JS, lua三种编程语言。
cocos2d-x的核心功能是编写单独的游戏,一个游戏作为单个APP,但在实际的APP开发中,如果要增加很多动画或者比较酷炫的效果,用原始的Native编写,就会显得比较麻烦。ios这边,可以使用苹果官方的Sprite Kit这个游戏引擎,开发比较方便;android这边,可以使用原生的java来开发或者引入其他的游戏引擎(个人觉得开源的Libgdx比较合适),如果android采用Java来编写,很多游戏的基础功能就会受到很大的限制,譬如游戏暂停、游戏恢复、前后台切换时的音效处理,用android原生来处理就会很麻烦。一个统一的处理方案是在APP里面嵌入游戏引擎,普通页面由Native处理,游戏页面由游戏引擎处理,这样就可以实现在App里面嵌入小游戏的目标。
目前市面上的游戏引擎,支持跨平台、开源、应用广泛的不是很多,目前市面上的app多采用cocos2d-x。
cocos2d-x语言支持C++, JS, lua三种,技术上而言,选用哪一个都OK。
由于cocos2d-x的引擎主要由C++编写,所以采用C++来编写。
这里又分为两种情况,
如果是app刚开始开发的话,可以直接在生成的cocos2d-x项目中添加android应用或者ios应用的代码,在游戏项目中添加应用代码,这样就不用花时间来配置开发环境了。
如果是app已经有很多功能了,这个时候就需要将cocos2d-x的源码导入到android应用或者是ios应用中,这个配置环境也会花费一些时间,一个比较稳妥的办法是,参考生成的cocos2d-x项目的代码,将cocos2d-x的代码嵌入到Native(android或者ios)项目中去。
另外,由于cocos2d-x是用于开发游戏的,一般而言,在app中的游戏,技术和逻辑都比较简单,难点在于与Native端的交互,一个建议就是,不要将游戏页面与Native页面耦合的太紧,这样会有很多意想不到的的坑。
cocos2d-x在App中的应用的更多相关文章
- 在iOS APP中使用H5显示百度地图时如何支持HTTPS?
现象: 公司正在开发一个iOSAPP,使用h5显示百度地图,但是发现同样的H5页面,在安卓可以显示出来,在iOS中就显示不出来. 原因分析: 但是现在iOS开发中,苹果已经要求在APP中的所有对外连接 ...
- 分享 Ionic 开发 Hybrid App 中遇到的问题以及后期发布 iOS/Android 的方方面面
此篇文章主要整理了最近在使用 Ionic 开发 Hybrid App 过程中遇到的一些疑难点以及后期发布生成 iOS 和 Android 版本过程中的种种问题. 文章目录 Ionic 简介和项目需求介 ...
- 【iOS开发】在 App 中加入 AdMob 广告 - 入门介绍与编程技巧
前言 虽然在App中加入广告来盈利是比较低级的商业化方式,但对于个人开发者或者小团队开发者来说,做出一个简单易用的免费小工具(举个栗子),在里面加入一些广告,如果用的人多,也是可以带来一些可观的收入的 ...
- 我刚知道的WAP app中meta的属性
之前我一直做的都是WEB前端开发,来北京以后面试了一个移动前端开发,WAP前端开发. 其实在原来公司的时候也做过这方面的开发,可面试的时候面试官问我,要想强制让文档与设备的宽度保持1:1,mate标签 ...
- 在app中打开appStore中其他app
var str = "https://itunes.apple.com/cn/app/zhang-jiange-hao-tou-zi-ke/id402382976?mt=8"//这 ...
- 在 C# App 中嵌入 Chrome 浏览器使用 CefSharp
介绍 以前曾试过在app中整合一个可靠又快速的web浏览器吗? 在本文中,你会学到如何轻松地将奇妙的CefSharp网页浏览器组件(基于Chromium)集成到你的C# app中. 然后,你可以使用此 ...
- 仿各种APP将文章DOM转JSON并在APP中以列表显示(android、ios、php已开源)
背景 一直以来都想实现类似新闻客户端.鲜城等文章型app的正文显示,即在web editor下编辑后存为json,在app中解析json并显示正文. 网上搜过,没找到轮子.都是给的思路,然后告知是公司 ...
- 我刚知道的WAP app中meta的属性(转载)
之前我一直做的都是WEB前端开发,来北京以后面试了一个移动前端开发,WAP前端开发. 其实在原来公司的时候也做过这方面的开发,可面试的时候面试官问我,要想强制让文档与设备的宽度保持1:1,mate标签 ...
- 解决“iOS 7 app自动更新,无法在app中向用户展示更新内容”问题
转自cocoachina iOS 7能在后台自动app,这对开发者来说和用户都很方便,但是还是有一些缺点.用户不会知道app本次更新的内容,除非他们上到app的App Store页面去查看.开发者也会 ...
- 创意设计展示:折叠效果在移动 App 中的应用
在今天在移动 App 界面设计中,你可以看到不同创意类型的视觉效果.特别是在 Dribbble 上面,有有很多应用程序的 UI 概念设计,让你惊叹.当然,他们大多只是作为一个概念设计,可能永远也不会成 ...
随机推荐
- python 忽略警告
import warningswarnings.filterwarnings("ignore")看起来整洁一点...
- 线程的中断.interrupt
线程对象.interrupt() 注意,异常分析中要有break,否则无法中断 public class Demo extends JFrame { private Thread thread;//定 ...
- oracle使用using关键字
oracle使用using关键字sql/92标准可以使用using关键字来简化连接查询,但是只是在查询满足下面两个条件时,才能使 用using关键字进行简化.1.查询必须是等值连接.2.等值连接中的列 ...
- css小笔记
一.优先级 important>内联>id>class = 属性 = 伪类 >标签 = 伪元素 > 通配符(*) important声明 1,0,0,0 ID选择器 0, ...
- bootstrap 模态 modal 小例子【转】
bootstrap 模态 modal 小例子 <html> <head> <meta charset="utf-8" /> <title ...
- 阿里巴巴为什么不用 ZooKeeper 做服务发现?
阿里巴巴为什么不用 ZooKeeper 做服务发现? http://jm.taobao.org/2018/06/13/%E5%81%9A%E6%9C%8D%E5%8A%A1%E5%8F%91%E7%8 ...
- centos shell运行报语法错误: 未预期的文件结尾
可能原因: 脚本是windows下写的,然后传到linux下运行的 需要给dos文件格式转成unix dos转unix 安装: yum install dos2unix 命令: dos2unix fi ...
- SQL Server进阶(一)T-SQL查询和编程的背景
- HttpWebRequest post 提交 C#的WebBrowser操作frame如此简单 WebClient 提交
//http://www.cnblogs.com/cgli/archive/2011/04/09/2010497.html System.Net.ServicePointManager.Expect1 ...
- Java SE之String,字符串和子字符串的存储与区别
理解String 是怎么占用内存的 来看一个每个String对象的各个属性,一个String包括如下的属性: 一个char数组(是个独立的对象用来存储字符串中的字符) 一个int 的off ...