张晓龙:Cocos2015秋季峰会——Cocos v2.3.2新功能解析
(来自【Gad】带来的Cocos峰会现场内容)
分享者:张晓龙 Cocos编辑器的负责人。
Cocos春季开发者大会到现在差不多有四个月了。我们⼀共花了8个版本,基本四个⽉八个版本,也就是平均两周⼀个版本。双周迭代可以有效的解决开发者在具体使⽤和开发过程中遇到的问题以及对一些需求可以及时得⽀持。⼀直以来Cocos的需求来源于用户,来源于开发者,包括我们背后有一个专职的技术团队,然后每天都在各大反馈渠道上搜集⼤家的需求,并且进⾏汇总,而我们内部每周会有⼀个公共评审,主要还是功能优先级的评定。低功能需求的话,我们会放⼊⼀个需求值,在下⼀个版本周期重新拿过来评审。
Cocos的反馈渠道主要集中在以下⼏几个渠道:⼀个是反馈平台,反馈平台是一个刚推出来不久的功能,还有一个是论坛和QQ群。反馈平台虽然上线最晚,但是开发者提出问题的频次是最高的,现在占整个反馈渠道的问题数量占到了70%。接下来就是反馈平台这⼀块简单说两句, 反馈平台是从三个⽉月前我们发布的,是以两种形式给⼤家呈现,一种是以客户端的形式,⾥面有一个反馈。再一个是页面,点进去的话,可以将自己的问题反馈上去。我们的反馈平台覆盖了全系列的产品。技术⽀持团队每个⼯作⽇从早到晚⼀直在给⼤家解答各种问题,到目前为止,累积已经解决到4千多个问题。而且对于团队来说有⼀个很好的办法,就是将问题进⾏行分 类,我们⽀持团队可以非常及时和有效的进行解答。
⽤Cocos工具的开发者应该都知道,Cocos从2.0开始就是以⼀个工具的形态发布。⼀个⼯具就是把所有的功能,⽐如界⾯编辑等一系列的全部集中在⼀个⼯具⾥面去发布。为什么要这样做?如果独⽴出来,对开发团队来说是要更容易一些,之所以坚持这样做,其实我们认为是有非常大的好处,第一,⼀个工具可以有效的将我们在游戏开发中的工作路径缩短,⽽且同一个界面和同⼀个设置可以有效的降低我们的学习成本。再一个,本⾝身Cocos有⼀一个灵活的机制,灵活之处是在于我们所有的UI等,所有的东西都可以进⾏行灵活的编辑。这样设计,工具使⽤灵活,其中最明显的是不同的功能可以相互的混⽤用,让游戏的实现不局限于⼀种固定模式。现在Cocos已经发布到了2.3.2版本,除了⼀些大量的优化基础上我们也推出了⼀些新功能,接下来跟大家讲解一下。
动画功能:Cocos工具的动画编辑功能支持将所有的控件去做动画。我们把这个工具整合在⼀起,比如我们的动画功能是基础功能,支持所有的控件,不管是做策划还是做界面都可实现动画功能。Cocos也支持两种动画方式,一种是关键帧,一种是序列帧。这样的方式其实在现在的游戏开发中也是重要且有用的。例如右边演⽰的“⼑光剑影”(详见视频)的特效,⽤序列帧就有很好的表现。这个是示编辑器的主界面,有这大功能,我们把它框起来,一个是骨骼编辑⼯具,包括了绑定、结构调整⼀系列的功能是⼀个工具条。再⼀个是动画列表,是将⼀组完整的动作分解成各个单独的动作,可以在代码中单独的解析和使用,并且单独支持动画嵌套的功能。动画曲线是在帧上做调整。最后是动画帧的事件,比如做⼀个脚步跑步的动作,如播放音效,或者是触发其他的事件,这些是非常的有⽤。 动画嵌套,如要做一把武器,这把武器可能是另外⼀个动画角⾊的部件,编辑完自身的动画之后导到另外一个动画文件⾥去继续作为⼀个部件再次编辑。这个是动画⽅面。
标尺参考线:这个看似非常简单,但是也是使⽤的功能,所以也算是比较重要的功能。特别是在编辑UI界⾯的时候,经常会碰到界⾯摆放不整齐,难以放到⼀个应该放的位置上,因为肉眼识别的话,经常产⽣误差,存在⼀系列的问题。根据这些问题,我们推出了新的⼀个功能,就是标尺参考线。标尺参考线支持快速创建,从标尺拖⼀边,放到相应的位置, 如果想精准创建的话,通过菜单,可以把参考线串接在哪个坐标上,通过参考线⽀持自动吸附。通过参考线打出来的网格可以非常整齐的码在上面。还有⼀些其他的⼩功能,比如参考线的颜色等。比如我界面就是跟参考线相同的颜色,可能就看不见,这样就可以设计其他的颜⾊,⽅便去使用。
打包系统:Cocos在4⽉份的版本里发布的新版本是支持打包,就是在编辑器编辑的项目是直接可打包成游戏可以跑的⼀一个APK的包。我们把这个功能进行了升级,不光可以打包APK, 还可以打包HTML5。还有⼀键配置,配置各种安卓相应的工具包很麻烦,⽽且会出现很多的问题。其实我们也是推出来这个功能,在打包设计界面,这里就设计了安卓打包的环境,如果不想配置,下面有一键适配,一点下弹出来⼀个界面,这个界⾯告诉你需要下载这个,这些下载不需要你找,只要点一下,就可以自动帮你下,所有的包在自⼰的商店里有。我们保证发的包不会在有病毒。另外是⼿机运行,也就是你打包好了APK,可以直接通过数据线联到电脑上,直接把这个游戏拷在你的⼿手机上,可以看到真实的效果。
插件扩展:这个是需求响应最⾼的⼀个,也是呼声最高的⼀个需求。因为可能⼤家在使⽤引擎的时候多多少少会做⼀些扩展。⽐如我们做了一套新的UI控件,觉得官⽅方的控件有问题, 就⾃己做⼀一套。其实过去很多版本就支持了这个扩展。除此以外,其实编辑器的插件扩展远远不⽌一次,下面我们来展示一下(详看视频)。第一个是LUA导出来的插件,直接把这个LUA代码对应的图片加进去,这些东西就直接可以跑,节约了解析的过程,而且在具体调试的过程中可以调试到资源的。另外是Web模拟器,可以进行场景的预览,还可以进行代码的修改、保存、 调试⼀系列的功能。当然我们也推荐大家把⾃己觉得不错的插件分享给⼤家,⽽且商店你可以在上面获得一些利益,可以作为⼀个收费的插件。
3D编辑器功能:这是我们在三四个月前发布的预览版,是我们内部的⼀个3D高⼿花了两个月的时间在我们编辑器拓展出来一套3D编辑功能,但是这个预览版的体验不好,⽽且功能比较单⼀一,所以我们也花了很多的时间把体验和基础这⼀块全部做完,也正式把3D的编辑功能推出来。现在的版本算是正式推出的3D编辑功能,但是现在的功能可以说还是远远不足的。我们现在还有很大量的3D功能在开发中,现在目前⽀持比如3D摄影机,通过不同的自定义的摄影机获得不同的视角。后面的话,3D的地形编辑等等这些功能,我们的研发团队正在紧急的 开发中。
最后就是一些⼩的功能点的优化。我选了几点比较有用的优化点:第⼀是搜索,搜索功能是集成在商店的界⾯的右上角这个部分。比如说在开发的过程中遇到⼀些问题,或者需要一些资源, 这个搜索都可以做到的。只要在搜索里去搜索⼀些关键字,对应的⽂档、教程都在搜索界⾯里, 可以很方便的去查找。文档中心也切入到我们的程序,并且合并在一起,如果在开发过程中,⽤编辑器需要文档,或者需要一些教程的话,都可以在⾥面快速的找到。还有一个⽐较快速的帮你找到⼀些解决⽅方法。常见问题这⼀块,其实是一个功能,在我们的反馈平台上,反馈在后端。后面有一个技术支持团队在维护的,我们把⾼高频次,就是开发者提问的⼀些问题全部汇总到独立的页⾯里,这样的话,可以方便开发者快速的定位问题,去查找一些问题。只要我们做这一系列的看似比较小的功能,都是为了提供开发者的效率。还有⼀个功能就是项⽬目升级,⽐如纯资源的项目,如果在后期想进⾏打包,进行编辑,进⾏开发等等,可以在编辑器里直接升级,之前开发者就是说重新建⼀个文档,重新拷过去。我们干脆把这个功能给它做了。另外是UI控件的升级,一个是字体控件,⼀个是文档嵌套。
以上是我给⼤家介绍我们在Cocos一些新版本的更新。后续的话,⼀⽅⾯在3D进⾏行发⼒力,拓展3D的功能,第二也在2D上进行⼀些在界面或者UI编辑上进行优化。
