热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

Cocos2d-HTML5游戏引擎作者林顺:HTML5来袭,准备好了吗

林顺介绍了Cocos2DJSB架构,在手机上使用一个Cocos2DJSAPI来调动所有的Cocos2DJSB的资源,这将让你的HTML5游戏性能提升100%。林顺还为大家推荐了一款Intel的HTML5性能分析工具,该工具可以模拟从500块的手机,到5000块钱的手机等不同设备运行你的HTML5游戏时的性能表现

林顺介绍了Cocos2D JSB架构,在手机上使用一个Cocos2D JS API来调动所有的Cocos2D JSB的资源,这将让你的HTML5游戏性能提升100%。林顺还为大家推荐了一款Intel的HTML5性能分析工具,该工具可以模拟从500块的手机,到5000块钱的手机等不同设备运行你的HTML5游戏时的性能表现。

Cocos2d-HTML5游戏引擎作者 林顺

以下是他的演讲实录:

我是来自Cocos2D-X团队的林顺。在这里先跟大家分享一个好消息,就是前面王哲介绍的环节里面的所有工具,包括后面晓龙介绍的一些工具在HTML5都可以支持,我们会有一个版本同步的发布,当这些工具有更新的时候,我们都可以同步更新,这样你做完了一个游戏,如果是采用这些工具的话,你不仅可以发布在Native的应用市场上,同时也可以发布在HTML5上面。

今天给大家分享的内容是HTML5来袭,大家准备好了吗?主要是关于HTML5现在一些产品状态和技术状态。首先我们来看一下游戏的现状。前面昊芝也介绍了很多2012年手游非常火爆的一个现状,在这里我就不再做重复的介绍了。我们可以从图上看到这个增长的曲线是非常陡。这么火爆的一个手游的游戏市场,是不是都是原生应用市场?这里有一个红色的版本是《三国来了》,这是2012年3月份上线,一直居在榜首,长达3个多月,至今已经有一年多的时间了,一直处于榜首,光iOS这个渠道的收入就超过千万。这款游戏比较特殊一点。2012年还有一些非常不错的HTML5游戏,包括《巴哈姆特之怒》、《三国时代》、《霸气三国》、《新拥兵三国》。《巴姆特之怒》说,如果没有HTML5这种技术标准,他们是没有办法取得5千万这么好的一个成绩的。

我们下面来看一个国内的具体案例,这是《三国时代》。我们看到了四张图,第一个是Android市场。第二个是iOS市场,这是原生应用市场。第三个是微游戏里面的。第四个是网页模式,这是一个非常经典的案例,为我们展示了HTML5,《三国时代》是走在技术和市场的前沿的。

用HTML5来开发游戏的话有非常多的优点,跨平台是我们刚刚所展示的,高效、开放,因为它是一个开放的标准。增量更新这一点也非常重要,前天我们也说了,如果一个APP要更新,如果你要做一个市场活动,重新更新APP的话这个怎么办?比如说你要做一个促销的部分,如果是用HTML5开发,哪怕你是打算发布到原生应用市场,你的更新也是可以非常快速的用这种增量,就可以直接更新上去,另外开发效率更高。现在也有非常多的人一直在怀疑,说我现在投入HTML5是否到了一个比较不错的时机?因为存在的争议也有一些方面,包括性能比较低、安全性比较低、碎片化严重,碎片化严重包括两个方面:一是说你在使用HTML5的时候,还会遇到和Android一样的问题,有各种各样尺寸的设备,这个时候你都要去适配。你要运行在浏览器里面,PC的浏览器会随时改变窗口大小,每改变一次都是一个新的问题。二是不仅要适应这些各种移动平台,同时还要适应不同浏览器里面的运行环境,这是碎片化里面的第二个方面。还有就是平台渠道不成熟。

HTML5面对的挑战。这里给大家介绍Cocos2D JSB,前面王哲已经覆盖到了这些内容,所以我非常快的给大家介绍。如果现在你开发一款游戏是使用的HTML5,它的基础是这样子的。游戏运行在游戏框架上和浏览器里面有这么多部分,为什么JSB能够那么快、那么好的提高效率?原因是我们让JS上面的这一部分更高了,运行的是Cocos2D JSB,下面是一个C++。下面的这部分我们做的最大的一项工作是把Cocos2D HTML5下沉到C++的HTML5。我们是在上面构建了一层JS API,这个时候它跟HTML5的API是一样的,唯一的区别是它是一个高实现,这个时候你调用的API,实际上会到Native那边去找相同的方法执行,所以效率至少是100倍的增加。

这是英特尔为我们开发的一个Benchmark,我们可以很好的设置游戏在HTML5环境下成什么样子。比如说可以有一个很准确的认识,我这款游戏,比如说卡牌游戏,在一个机器上面跑多少可以有一个基准,在其他的机器现在市面的价格500块钱左右大概是0.65分,如果是卡牌游戏的话能够跑半次,如果想用HTML5来开发一个COC这种级别的游戏,是没有办法在上面跑得非常流畅。

我们来看一下JSB的方案,在MTK6577上面能有什么样的运行效果。就我们在图上看到的这个游戏,在MTK6577上我们实测过能跑60帧。我手上这个手机现在市面价格500块,这是我昨天录的一个视频,在这个500块钱的手机上面可以跑22.5、22.5帧。所以你用HTML5的方式开发一个游戏,在一个500块钱的机器上面能跑这样的效果,大家觉得HTML5离我们还会很远吗?一个游戏如果有1千个同时在做动作,做各种旋转,我想已经足以支撑一个非常复杂的游戏。下面这个跑的成绩也很好,59帧,回头大家可以自己试一下。JSB开发还有一个非常高效的解决前面所提到碎片化的问题,在这里我们可以看到提供了这么一个工具,你可以将你未来的应用发布到市场的时候先做验证,比如现在看到的是一个iPhone4S,你可以旋转,看分辨率和浏览器的适配,这些都可以在浏览器里面全部都做完,最后一个动作才是应用市场。我们能够看到不同的设备,不同的Pad可以做这种资源的适配和加载。

我们再回顾一下之前提到的问题,首先我们提到的性能的问题,我想HTML5做游戏这个方案也能跑22.5帧,在一个500块钱的机器上,甚至更低的机器上,我想就可以支撑目前App Store里面这些非常畅销的游戏,都不会有问题。安全性的问题,我们现在会做代码的混淆和加密,这个专题下午我会做详细的解析。我们从英特尔那边会跟他们合作,中间代码的安全性和效率的提升都会有一个非常高的显示。碎片化的问题前面我们演示过了,我们正在做自动适配的方案,在浏览器开发的时候,一次开发可以覆盖包括浏览器和设备的各种分辨率。平台和设备不成熟这一点我想应该是分两个方面来看:一是如果说现在用HTML5开发出来的游戏,用这个解决方案,已经可以达到和Native方式开发的游戏同样的,可以放到Native的市场上,这时候你可以获得应用开发所有的市场机会,而且比它更灵活。还有质量更新,还有效率更高,成本更低等优势,我想用这个方式来开发,你已经不比这种方式差了,同时还会获得HTML5的市场机会。

下面看一下还有哪些更不错的机会等着我们。大家看到这是我们做游戏一直关注的焦点,这是我截下来的一个图,这个模式在韩国占据了很高的地位。如果这个事情在中国也发生,而且HTML5可能给它插上翅膀,这种模式下,有没有可能改变目前的这种市场格局?这是一个非常好的机会,HTML5不离开应用直接实现游戏。现有的浏览器平台,大流量的App。我想HTML5应该是更准确的被定义为它是不离开应用,在任何一款大流量的App里面运行,理论上来讲,大流量的App都可以是一个平台,同时都可以是HTML5游戏增长出来的一个新的机会。最后是我们非常关心的移动运营商,我觉得昊芝提的方案非常具有吸引力,假如哪天你用某个运营商的平台来玩游戏,他给你的承诺是我的游戏里面的流量不收钱,那么HTML5可能就是一个最强有力的爆点。

讲到这里,我想给大家讲一个故事。在2012年之前,王哲和我每次开发者大会的时候都会跟他们说一句话,用Cocos2D-X的好处是什么?我们不仅享有iOS的机会,同时我们也享有Android市场的机会。2012年那个时候这个事情还不太好说,也有一些开发者直接去用我们企业发布的Cocos2D平台,他们确实赚到钱了。到了2012年6月和8月这个事情就不用再问了,到了现在,游戏厂商推出来的游戏一样的是两个平台一起上,iOS和Android一起上,要么就更干脆一点,直接先发Android市场,现在这种情况非常多,2012年之前这种情况是非常少的。

今天我又来了,来做什么呢?也是跟大家说同样一句话。今天你用Cocos HTML5这个整体解决方案,你享有所有的机会,你还有机会享有HTML5市场。我们的技术已经到了提供出来一个比较好的状态了,HTML5可以让开发者有一个很好的生存条件、盈利空间和盈利机会。我们来看一下现在已经有哪些产品用我们的解决方案来到我们的身边。这是一个页游,是《回到三国》,是用HTML5,相信非常快就可以和大家见面。我们看在这款游戏里面应该可以实现我们传统的页游需要的所有的,这个效果已经非常不错了。这是页游进入手游一个非常不错的选择,开发一次,在Web运营的方式非常熟悉,也有机会杀到手游市场当中,如果由手游再转到页游,那也是一个非常不错的选择。这是用Cocos2D-X做的一二三国,我们后面会进一步把这个游戏推到Web上面来。这是国内市场的情况。

国外市场的情况是有两个游戏,大家可以上去找。应该说还有更多的游戏,只是我们现在没有一个非常好的渠道可以把它能够搜集进来,因为我们跟非常多的公司立项在做这个项目。最后是Matching with Friends,我相信有这么多的厂商,有这么多的商业作品已经提交到各个市场,包括页面的方式,包括HTML5,包括其他的作品。那么引擎的这个解决方案,这种高效性,以及对于HTML5的应用已经得到了非常好的解决。引擎非常多的技术问题在这么多的技术推广的时候已经完全得到了解决。而且有Zynga这样大公司在前面开路,是一个比较好的引路者,而且他们已经有了非常成熟的作品,而且后面还会有一系列的作品出来,一起将这个项目推到一个更成熟的状态。所以用Cocos2D-X的解决方案,总的来说,你并不会丢失掉你原来在原生应用市场的机会,同时你有一个新的模式投入到更高效的方式来开发。技术的准备已经相当到位了,周围的产品不断的到达大家的身边,HTML5真的离我们非常非常近了,大家准备好了吗?

我的分享就到这里,谢谢大家!


推荐阅读
  • Monkey《大话移动——Android与iOS应用测试指南》的预购信息发布啦!
    Monkey《大话移动——Android与iOS应用测试指南》的预购信息已经发布,可以在京东和当当网进行预购。感谢几位大牛给出的书评,并呼吁大家的支持。明天京东的链接也将发布。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 在project.properties添加#Projecttarget.targetandroid-19android.library.reference.1..Sliding ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
author-avatar
明月思含含
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有