历过半年多的精心打磨,Cocos2d-x v3.0正式版本最终发布!相比于去年9月份的Cocos2d-x v3.0-alpha版,正式版本在渲染器、性能、兼容性、稳定性等方面都得到了质的提升,并新增对WinPhone8的支持。
此外,引擎团队更分别针对C++、Lua、JavaScript三种编程接口的使用体验做了大量提升,我们来看一下各语言的优化:
C++基础底层优化:新渲染器、新API、性能飞跃
新的渲染器——更优雅, 更灵活,更易用;可创建渲染队列,每个节点独立发布渲染指令,分解draw命令,实现批量渲染;所有OpenGL集中在渲染器中,使跨平台更加容易;同时,通过创建一个自定义的渲染命令,用回调函数放入渲染逻辑而保留了自定义定制OpenGL的功能。
新修改过的API——使用C++11特性取代了 Objective-C 的特性,稳定性与可读性得到提升; 重做了许多容器,直接包装了Std,可自动保存,使用起来更加方便;将object慢慢移除使用,改成Ref来继承;另外还做了基于内存引用技术池,可自动释放内存,方便管理。
性能/兼容性/内存分配优化——利用自动剪裁技术,大场景游戏流畅度得到了2-8倍的提升,而Auto-Batching自动模拟合并功能的性能已接近于手调;sortall Children经优化排序算法后加快10倍,visit经过做缓存加快了3倍;兼容性方面提升至90.71%,达到一些国外引擎的三倍,在中国安卓平台上非常好用;CPU平均占用率也降低了36%。
增强Lua语言体验: 开发快,测试快,上线快
新版本为开发者增强了Lua体验,核心的改进主要有几个方面:
1、使用bindngs-generator生成Lua绑定,大大减少了编写pkg文档的工作量;
2、对于V3.0新增功能基本做了绑定,例如new Label,EventDispatcher和physics等,同时对原有的一些c++功能也进行了绑定,例如websocket,xmlHttpRequest,Spine,AssetManager和OpenGL相关函数的绑定
3、绑定时自动实现了模块化的工作,当前在Lua可以使用的模块有cc,ccs,ccui,sp,gl
4、使用ScriptHandlerMgr统一管理Lua function的注册以及反注册
5、对于一些类直接使用Lua table传递,例如Point,Rect和Size等
6、增加了Lua脚本直接调用ObjectC和Java代码
新产品线Cocos2d-JS:HTML5+JSB高效整合
原Cocos2d-html5与Cocos2d-JSB现正式整合为一个新的产品线——Cocos2d-JS,为开发者提供一致的使用体验、功能支持,以及清晰的工作流。Cocos2d-JS安装包包含完整的HTML5引擎与JSB运行库,命令行工具提供三步搞定Web与Native全平台部署的便捷功能。
首先,Cocos2d-JS统一了使用JS进行开发的开发体验,将HTML5引擎与JSB的API高度统一起来,新文件目录结构使HTML5开发和JSB开发完全共享游戏代码,全平台部署工具也统一了开发后的发布与测试过程,一次开发全平台运行在Cocos2d-JS上将成为再自然不过的开发体验。
其次,Cocos2d-JS的发布亦完成了HTML5引擎从2.x到3.0 alpha的飞跃,核心的改进主要有极大简化的游戏启动代码,全新的JS风格API,更强大的事件管理器,以及更易用的单例对象。在3.0正式版之前还将增加提升性能的Bake Node与更加易用的Action API。
工具方面,除了全平台部署工具,Cocos2d-JS还提供模块化配置能力,可将引擎中不需要的东西全部剔掉。后续将新增界面工具来自动完成打包压缩,目前最小引擎版本打包完之后为120K。同时,可视化调试工具可获得当前场景的结构树,进行排版调整、属性修改、简化UI调试等工作。此外,Intel还贡献BENCHMARK工具用于在不同机型、浏览器上跑分,帮助项目定位推出市场之后能覆盖到哪些用户。
CocoStudio 新增Code IDE:打造完整工具链
引擎之外,Cocos2d-x团队的愿景更是成为一个跨平台游戏开发的完整工具链,包含从快速原型开发到最终完成一个高性能产品,帮助开发者降低成本与缩短周期,推动开发者生态圈。
工具链的***部分是框架,调API使用SDK,包括渲染器、场景管理等;第二部分是CocoStudio编辑器;第三部分是工具集。
目前CocoStudio已更新至v1.3版本,优化体验的同时新增了大量新功能、新亮点:动画编辑器增加批量操作动画帧,以及洋葱皮与动画曲线功能;UI编辑器支持扩展UI插件;场景编辑器提供炫酷的触发器功能,让开发者不写代码即可做游戏。此外,CocoStudio v2.0版本也在紧锣密鼓地进行中,将实现跨平台,计划支持JS与LUA绑定,规划于今年底前发布。
本次,CocoStudio还新增了基于Eclipse的跨平台Code IDE ,专为 Cocos2d-x Lua & JavaScript 开发人员准备。通过Cocos IDE,可方便地创建游戏工程、编写并且调试代码、实时查看代码修改效果、最终直接发布成一个可上架的安装包。
在广大开发者与contributor的支持与陪伴下,Cocos2d-x已经成为全球在手机游戏开发商及独立开发者中占有率***的游戏引擎,在过去30年中,中国没有第二个团队在基础产品及技术上在全球获得如此高的接受度与占有率。本次v3.0正式版本将致力打造一个新的里程碑,以开源高效的***提升,为开发者带来更加流畅友好的开发过程,见证开发者创造新的奇迹。
Cocos2d-x v3.0下载地址:http://www.cocos2d-x.org/download
Cocos2d-x v3.0 Release note:https://github.com/fusijie/Cocos2d-x3.0-Release-Note/blob/master /cocos2d-x_v3.0_release_notes.md#highlights-of-v30
Cocos IDE入门指南:https://github.com/honghui/cocos-docs/blob/master/manual/studio/cocos-code-ide/getting-started/zh.md