首页 > H5资讯 > HTML5资讯 >触控科技VP王哲——答Cocos引擎产品的技术问题

触控科技VP王哲——答Cocos引擎产品的技术问题

2015-08-04 10:56 来源:伍游网 编辑:未知 0人参与评论
【摘要】在Cocos生态源创新开发者峰会上,触控科技VP王哲解答了关于Cocos引擎系列产品的技术问题。

  目前,Cocos已全面整合升级基于引擎的产品资源体系,为开发者提供完善的产品平台、流量平台和服务平台,同时与互联网行业巨头携手合作,一如既往地引领着行业发展风向。在Cocos生态源创新开发者峰会上,触控科技VP王哲一上台就表示先进入Q&A自由交流环节,回答大家最关心的问题。王哲也想知道大家关心的重点是什么,引擎的框架、编辑器、HTML5、3D?一听此言,在场的小伙伴都乐开了花,纷纷抛出关于Cocos引擎所有系列产品的技术问题。


11111111111111.png


  提问:之前在iOS的CocosPlay,在安卓那边怎么接入?

   

  王哲:很多人问这个问题,CocosPlay这个产品是去年的ChinaJoy,也应该是在这个厅做的发布会,到现在已经运行了一年。大家要接CocosPlay,从Play.Cocos.com进去,这里面有文档,商务的联系方式,从这里开始。如果还觉得不够,刚才有一个微信群,里面直接拉群聊。因为webJS,是iOS比较新的版本,是iOS8才开始有,安卓上是没有的,只能靠H5的加速器来跑,现在H5加速器太专业了。

   

  提问:这个接入是需要申请是吧?

   

  王哲:现在是跟商务捆绑在一起。

   

  提问:需要什么条件?

   

  王哲:具体联系商务吧。其实基本上还是看游戏足够好,如果搞一个擦边球的或者游戏品质很恶劣肯定是上不去。就有点像审核一样,也是要合规,对玩家而言有价值。还有什么问题?技术产品的问题随便问。

   

  提问:我发现有的时候我做微信活动的这种游戏,声音都是一个问题,就是背景音乐和音效。我看到有一些HTML5游戏公司,安卓平台的游戏声音都是去掉的。能不能提供一下?

   

  杨三金:这个问题我们正在解决,因为现在手游、微信和空间都内制了QQ浏览器的X5内核。现在浏览器上的X5已经对游戏声音做了支持,我们会有一个通知,比如home出去或者暂停,我们出一个通知,游戏可以捕获这个通知,做一个声音的暂停或者开始的动作。在微信,我们很快,都会切入到(BuLink)的版本上。

  

  提问:我用了两年多的Cocos引擎,我们有两个产品都在用LuaQuick这个版本,好像已经停止状态了?

   

  王哲:前一段时间去设计reader结构,我们需要有一个分模块的,序列化和反序列化的机制。Studio有一个问题,数据结构是一层一层嵌套的,实际上是应该靠ID出来,就可以实现异步的加载。所以花了差不多,至少一两个月,一个半月去思考这些问题,然后做出整个设计稿。现在来讲整个Lua和Quick,后续除非有大的架构设计的改动,要不然不会再这样。

   

  提问:我是一个在校大学生,接触Cocos差不多两个月的时间。现在我看有很多写好的书籍,都是以C++为模式的,用的也是.6版本的,但是我突然发现大家都在做Lua还有CS什么的,我想问一下未来Cocos到底偏向于哪一方面?还有,如果我想去转向Lua,这种做法是比较明确的?还是应该是C++?

   

  王哲:现在我建议是Lua和JS,就是这种解释型的脚本。C++能少用尽量少用。现在游戏越来越大,养一个十几二十人的C++团队越来越难。现在流行的游戏基本上都是JS和Lua做的。C++要看手机页游的机会有没有。如果你现在想创业,应该主攻JS。如果想到网易、完美、巨人,Lua是正确的。

   

    提问:关于Cocos3d方面,在手机上最近出了很多3D大型游戏,我想了解一下,Cocos3d针对3D有哪些优势?

   

  王哲:在我的手机上跑一下给大家看,看看最近的效果。先看一个花了60美金买的一些素材,花了一个多礼拜拼出来的,这个是为了ChinaJoy放在展台上可以跑,我们可以操作一下,不操作怎么显得这是一个MOBA地图。他们比较懒,就做一个地形,边上都做比较粗糙,种一些树种在地图中间,有复活的井,中间铺得稍微密一点,可以转。左下角这个树可能有点小,现在是46万个顶点,除以3差不多是15万个三角形,现在是35帧,用了585个GPUcall。3D组的同时跟我讲的是,我们的性能差不多是翻倍。同样拼出来这个场景,差不多翻倍。

   

  提问:我本身也是用Quick开发2D游戏的,3D版本出来的时候是不是可以直接用Lua?

   

  王哲:现在这些功能的Lua API都有。那个是花60美金买素材,比较漂亮,其他的只能程序员审美,很丑的,不过能用。现在有Material System,比较丑,你可以看到可以用来做任何事情。这是一个自动寻路的,它实际上是需要用网格加物理去做,增加一点障碍物,随便加一些角色,我们都让它,比如走到这儿,这个路径是在另外一个开源软件里面规划的,我们就可以做出MMORPG或者MOBA出来,最后按照我们规划的路径去了。

  粒子效果这个蛮早版本就有了,这个没有什么难的。3D物理,最近我们做的,我们做了一些不是太复杂的是完全OK的。从我看这些3D的,我们做测试来讲,3D效果要好关键是两个,第一个是美术,美术比3D重要太多了。其实底下还是那些代码,但是刚才看到的那个场景跟看到这种的感觉完全不一样。第二是灯光,3D要打灯。刚才那个场景里面,我们用了一些东西。首先地形,这个地方是动画,动画结束,粒子效果,这个地方就有个灯光的感觉。但是你看这个场景觉得高大上,这些其实是预烘焙的,我们在MAYA里面预烘焙出来。如果这么多树用实时阴影算,在手机上肯定来不及。

   

  提问:什么版本可以让我们投入到游戏开发上?

   

  王哲:3D每个版本都在做大量3D的功能。刚才这个场景是3.7版本做的,我们一周多就拼出来了,因为功能都是现成的。大家问了H5,问了Lua,问了3D,后面这位是?

  

  提问:你好,我是一名美术,之前加了Cocos官方美术群,我这里代表美术群里面的群众问一下关于编辑器的问题。现在使用的是2.3.6的版本,比较新的。我个人体验下来最大的问题是,一个问题是时间轴,动画时间轴,部分体验我觉得不是特别好,还有一个是骨骼编辑器的缺失?

   

  王哲:骨骼编辑器下一个版本会加上。Q&A已经测完通过了,还没有发布,下一个版本就可以看到。

   

  提问:好的。我看你们好像特别是对程序那边比较多的支持,对美术这边的一些问题反馈不是很及时

   

  王哲:这是实话,因为做软件的这些人全是程序员,所以程序员用得很开心,但是整个引擎项目组里面,整个就缺少美术,特别是好的美术。

   

  提问:我想Cocos编辑器应该是针对美术的吧?

   

  王哲:对。

   

  提问:所以以后能不能多倾听一下美术的意见?

   

  王哲:我是这么打算的,应该是找几个美术人员直接加到编辑器组里面做产品设计,而不是现在是程序员和产品经理设计这个东西,因为他们并不是真正的使用者。这是一个很大的问题,做出来他可以用,但是不好用,对于美术人员来讲觉得不好用。

  

  分享一些干货。引擎现在分工具、服务和流量三层,先讲工具。除了刚才提问到的3D,我演示的3D功能之外,我们做了3D之后,回头看,这些3D的技术可以回过头来2D的部分。3.7版本里面我们做了多边形的描述。当你有边距的时候,这个透明的区域很大,但是这个边距消耗了GPU的象素填充率,经常导致整个游戏变慢,特别是大家做Cocos游戏最怕的是,有一个三层的背景叠加,全屏的背景叠加三层,这个地方全部消耗掉了。用工具测的时候你的overDraw太多了。3D游戏,比如刚才那个我们有45万个顶点,我们通过顶点数量来换象素填充率,这在2D游戏里面可以提高多少性能?在iPhone6Plus提高148%,平均来讲差不多可以提高一倍左右的性能。如果你的游戏里面,比如一个技能,一个弧光过去,我们经常拉一个正方形出来,这个就可以进行优化。在游戏开发后期,发现性能问题的时候可以用这个方法去优化。

  第二个,材质系统,最后可以做出各种效果。我们的材质系统跟材质文件格式是非常类似的。3D,刚才看过了,导航,这是做RPG准备的。它是一个开源的用C++写的编辑器,下载下来按照这个编一下就可以跑起来了。在这里面规划好以后,把整个数据格式导到Cocos里面就可以看到我刚才运行的结果。

  对我们来讲很重要的是3D编辑器,可以建立多个摄影机,3D场景编辑,3D模型导入,3D粒子导入,3D、2D结合,做另外一个图层蒙在上面。

  Cocos2.2里面,强调几个事情,一个是Framework,所有东西都在Cocos-x里面,同时带了Framework和Studio,还有一个是资源商店,花点小钱买点美术资源就搞定了。

  最近我们投了一些精力看看VR这些事情怎么搞。我有一个暴风魔镜,大家可以玩一下。这是一个场景,可以看天空,往前看往下看。它是渲染了两遍,获得这些陀螺仪、移动的数据,大家可以体验一下。VR这个东西,先试吧,从现在来看到行业真正成熟爆发,可能还需要一年半到两年的时间。如果是要创业的话,可能是很好的机会。我今天讲也是有点晕的,今天被骗到这个设备上体验了一把,这个设备真是丧心病狂,不光是VR,还有一个手柄。手柄往左拉的时候椅子会往左倾斜,整个轴会这样转过去。我下来晕得很,他们说我们对你挺好的,这个设备的极限情况是两秒钟内让你这样转两圈同时大转一圈。感谢友商不杀之恩。

  今天我们研发了VR,分屏渲染等等,未来很有可能是这样子的。

  工具之后我们讲第二层面,服务。把游戏开发出来只完成第一阶段,还有很多事情要做,我需要上线,还需要接入各种SDK的服务,最后货币化,我的东西,流量需要Checking。我们主要推两个服务,一个是CocosStore,一个是SDK。下载CocosStore,可以看到这里有一个商店,里面提供各种编辑器。Cocos本身就是一个开源社区,有大量的美术资源、3D的资源可以给我们快速地做一个Demo出来。

  CocosStore到目前为止已经累积上线了15000多款商品,各种东西都有,有资源、代码片断、美术、音乐、字体,我们跟方正也合作了。仅在7月份,后台统计到下载次数二百多万次,我不知道各位用户有多热情,整天去下载。整个成交了二十几万。所以刚才我这一页里面可以看到,也在搞一个Store的作品征集大赛,一周一轮。

  买资源是原型阶段,上线之后要push,要统计。我们和友商也有合作,后台打通,不需要每个网站去注册去挂信用卡,只要在Cocos里面完成。

  不知道有多少人在用Cocos但是没有听说过AnySDK的?我们介绍的部分就快速跳过。很多游戏在用。简单说,它省事。AnySDK,它第一天就是跟Cocos2d-x不一样,我们把它升级为Cocos的时候它才是一个整体解决方案。而AnySDK生下来第一天就是一个整体解决方案,可以独立更新,它有桌面打包客户端,我不喜欢把这些东西在云上面。还有一个服务端,不仅是客户端的工作量减少了,服务端也减少了。还有企业版,等会儿可以看一个架构图,我做了数据格式的统一,然后转化给你。如果你觉得让我知道不太好,没关系,你买一个企业版支持一下。云版本也可以,我们也提供云的版本。最后是插件的自助开发。

  再讲一下企业版和插件自助开发。这是AnySDK1.0版本和AnySDK的2.0版本,是向微软致敬的版本,这个界面风格我们就照抄了。加了两个很重要的功能,我们这么多的SDK的插件,近百的插件,一个团队维护这么多插件更新是不现实的。第二种情况是大家会遇到一种特殊的情况,我游戏要上线,游戏首发一定要发到某个渠道里面,这时候我要接这个SDK,怎么办?我想用AnySDK,但是我得为一个小的渠道单独建一个AnySDK。这就属于,有点像企业内部开发的SDK,或者自己有自己的SDK,不对外开。现在插件自助开发的时候,你不需要找我,不需要跟我对接,你在AnySDK里面新建一个插件,把自己的东西接完了,经过测试就搞定了,不需要等。再就是SDK版本太旧,有时候我们的更新也不是非常及时。比如我今天要上线,结果刚好今天渠道的同志说更新了SDK,就差那么一天,如果不更新渠道的同志就不让我上,这个事情发生过的。

  还有海外渠道,接完SDK我想上海外渠道,上泰国的,这种东西我们是做不了的,我们没有泰语的支持。海外渠道,你可以自己直接接。

  在这个界面里面,你可以在这里面直接新建一个插件,然后自助开发把这些数据填完,完成编码,经过测试,直接生成插件即可,你就可以在这里面用了。

  第二个是企业版,因为服务端,每个渠道的服务端在接受到用户登录和支付的消息之后,一定会通知到你的游戏服务端。游戏服务端里面加了钻石元宝之后,再更新到服务端。国内都是要通过服务端转接的,那么问题来了,每个渠道的格式是不一样的,所以我们做了AnySDK服务端,把所有的通知格式全部统一了,再发到游戏服务端。所以游戏服务器这边只要处理统一的数据格式就可以了。但是问题在于这些东西都经过AnySDK服务端,你的用户的这些数据我知道,虽然我不会公开但是我知道。如果觉得不放心的话,可以支持一下我们的生意,购买企业版。企业版现在已经有不少国内大的公司在用。我们的价格公开透明不打折,8万一年,三款游戏。这个服务器是架在你企业的私有云上。我们AnySDK的机房是放在世纪互联的机房,而你们的机房可能在另外的地方。这时候用户的登录和支付,可以把AnySDK的服务器架在你的游戏服务器机房,这样是最快的。对于中小型公司来讲,我放在阿里云上边,我把AnySDK的服务器也放在阿里云上面,你可以按月付。

  流量,等一下林顺会讲。手机的端游市场基本上已经结束了,在座可能有网易、腾讯的各位大佬,钱都是你们赚的。中小开发者其实机会越来越少。我们看到在这个市场里面有大量的长尾流量,所以手机页游的方式复制PC页游那波浪潮是完全可行的。腾讯浏览器今天也在这里。

  我们有一个自动转化工具,转化完以后一键部署到,两种,一种是原生游戏,比如Lua是原生游戏,也可以转化为页游,因为是解释型脚本。第二推荐H5的加速器来做。

  目前CocosPlay,也就是这个很丑的logo,目前已经有两百多个流量合作方。其实这个市场上有巨大的长尾流量,比如在糗事百科、看书、听音乐、看段子,这种人其实,因为他本来就无聊,所以跟玩游戏的人群的重合度非常高。这些人无聊的时候,你下面弹一个,老婆不在家玩的游戏,坐在马桶上玩的游戏,点完,不要问安装不要问权限,立刻开始玩,这是最高的点击到激活的转化率。我们有五十多个合作的游戏厂商,这些游戏也是可以老婆不在家和坐在马桶上玩的,比如网易游戏、完美、巨人。

  所以一方面是打通两个,一个是闲置的流量,第二个是我们真正需要流量来变现的游戏。

  CocosPlay是2014年的ChinaJoy,好像就在这个房间里做了发布会,现在为止运营了一年,这是运营的数据,媒体的朋友可以拍。最高的单款游戏月收入250万。点击激活转化率84%,比原生游戏要高的,点击就可以玩,不用下载安装,也不用一百兆,有个五六兆就进去玩了。

  新生态,Cocos在2010年的时候,我们说做安卓吧,没人信,因为安卓根本不赚钱。跨平台有意思吗?没有什么用。后来安卓起来了,再后来运营商机会起来了。所以我们也在不断看新的平台新的商业机会。包括我们跟Win10开展战略合作,捕鱼达人已经移植到Xboxone上面去了。Win10,因为两天前微软在水立方发布的,但是实际上我们4月份发的颁布就已经支持Win10了,这也是我们跟微软合作的。

  Cocos已经不断在这些新的领域里面探索,看能不能找到新的机会,给所有的开发者,帮大家做两件事,第一,降低开发成本,第二,多赚钱。

   

  提问:想问两个问题,我们这边做项目的时候,美术那边会有需求,就是说我们在做任何一个,UI层面上的一些操作一些改变都可以分为两个部分,一个部分是程序比较关心的数据层,一个是美术那边会要求的各种效果。然后我们在UI设计层面上会有很多动效的要求,也就是每做一个数据变更会伴随很多界面上的变化。但是这时候,整个结构还没有想好。我有一个想法是,比如我们在UI编辑器里面定义一些时间轴上的动画,当发生数据变化的时候同时去调用这个动画,做这个处理。如果动画很多就会非常麻烦,这方面有没有比较好的建议?

   

  王哲:好像也只能这样。

   

  提问:我再想想。还有第二个问题,我们在用Quick这个框架,我记得当时写了一个非常简单的东西,但是没有完成,不知道对于这方面,我们整个Cocos是怎么考虑这件事的?

   

  王哲:现在优先级最高的,第一个是3D,第二是编辑器,Studio,UI其实排在往后。再往下是数据启动和模块化,我们希望是插件结构,最后才是UI。我知道很多人希望要有NVC结构,因为中国游戏强烈要求换皮。但是在资源有限的情况下,3D的编辑器是第一位的。我无法承诺你UI明天就会改成NVC结构的。小的改进先做,NVC,我知道需要,但是不会很快。

   

  提问:我这边还是针对3D问一点简单的,我目前看了相关3D开发的,我感觉主要是从程序员来用的话,工具上,各种功能点是非常完善的。如果是Cocos的话,它的编辑器所能支持的功能点,目前我看好像还比较简单。针对后期在3D游戏中需要用到的一些功能点,Cocos编辑器会是一个什么样的速度跟进?

   

  王哲:这个是我们目前的发展重点,你可以看到,像我刚才演示的Demo,比较完整的3D的游戏的要素都在,通过框架,framework这个层面是可以跑起来的。我们现在框架是Ready的,但是框架做完了以后编辑器的兄弟们才能开工,让你编辑,把这个东西渲染出来,然后到处到游戏里面,现在我们处在这个游戏节点上。所以你看到这些功能,我要做3D的地形,不好意思,做不了,但是框架可以支持。我要做3D的寻路,请你用外部的编辑器。它是零散在各个外部的编辑器,你要知道什么情况用什么,现在还没有整合清楚,我们的目标是把这个做进去。找一个开源的编辑器,就是想怎么样把它合到里面去。

   

  提问:没有编辑器的支持,如果我们想尽快学习的话,有哪些Demo、文档之类的?

   

  王哲:代码写得好我们也开源出去,这样学习最快的。我现在有一个2D游戏,加一些3D的元素,这个是最广泛的,这时候不需要太强的3D编辑器的支持。我觉得一个2D的动作卡牌,但是抽卡的时候一个独立界面,一条龙飞过去,一个角色出来。还有主城里面,大家都一样,又是一个很大的场景,左右拖,就像刀塔传奇一样,建筑物替换成3D,后面的天空一包,这样就有了3D的感觉。

  谢谢大家!

版权声明:凡注明伍游网原创的文章版权归伍游网所有,未经允许不得转载。投稿与合作,请发至邮箱:news@5you.cc
0
发表评论
评论(0人参与,0条评论)
发 布
注册
最新评论
亲,还没有评论哦!