大家好!
很高兴告诉大伙,Cocos2d-JS v3.7beta0发布了。这对于我们来说是个大版本,在这个版本中有很多重大的更新:
1.Cocos2d-JS未来将只会发布final版本,所有的alpha,beta,rc版本只会在社区发布,包括中英文论坛,开发者QQ群等。而final版本会跟随Cocos同步发布。
2.v3.7版本中,Cocos2d-JS已经被合并到Cocos2d-x中,从现在开始,开发者不必纠结应该使用哪一款产品。在Cocos2d-x中,你同样可以使用C++/Lua/JS,然后发布在Windows/WP8.1/Android/Mac/iOS/Linux平台,如果使用JS的话,还可以发布在HTML5平台。在这个过渡期间,我们仍然会发布Cocos2d-x v3.7和Cocos2d-JS这两款产品,但实际上它们是同一个包。在将来的版本中,只会有一个包。想要了解更多内容,可以在http://discuss.cocos2d-x.org/t/discuss-the-next-step-of-cocos2d-x/21182/里讨论。
http://www.cocos2d-x.org/filedown/cocos2d-x-3.7beta0.zip,1包含:C++,Lua和JS。
Cocos2d-JS v3.7的主要功能:
1.3D物理
这是我们提供的一个用于支持3D物理游戏的物理引擎,它可以很好地配合当前3D模块,比如3D精灵,3D地形等等。我们使用http://bulletphysics.org/wordpress/来作为3D物理的基础,同时将它封装成Cocos 3D物理接口。你可以参考Physics3DTest测试例来查看它的API和用法,我们稍后将会增加相应的文档到http://cocos2d-x.org/programmersguide。

2.3D导航网格
3D导航网格系统提供了一套简单易用的接口可以方便在复杂的3D世界中寻路,你可以通过添加一个三角形列表添加网格,以及添加障碍物。然后你可以通过添加一个代理来执行寻路任务,根据路径移动你的3D精灵到某个指定的地方。你可以参考NavmeshTest测试例来查看它的API和用法,我们稍后将会增加相应的文档到http://cocos2d-x.org/programmersguide。

3.材质系统
材质系统是一个定义了对象的所有可视化信息(将来可能会包含音效和物理信息)的高级系统。相比于直接贴一张简单的2D贴图,你还可以做很多类似多通道渲染的高级功能。更多信息请参考https://github.com/chukong/programmers-guide/blob/v3.7/chapters/14.md#shaders-and-materials。

4.统一的Cocos2d-x
在将Cocos2d-JS合并到Cocos2d-x后,对于C++/Lua开发者来说可能没什么改变,但是对于JS开发者来说引擎的结构可能看起来相当奇怪。不必担心,升级是非常简单的,因为项目的结构和之前仍然是一样的。更多信息请参考http://discuss.cocos2d-x.org/t/cocos2d-js-v3-6-1-hot-fix-for-remote-debugger/21524/2。
5.增强的Polygon Sprite
在前一个版本中Polygon Sprite不是很好用,因此我们重构了Polygon Sprite的API。现在它成了2d精灵的一个内部特性,你可以使用AutoPolygon来给一个精灵生成polygon信息,然后直接用它来创建精灵,非常简单。
auto pinfo = AutoPolygon::generatePolygon("filename.png");
auto spp = Sprite::create(pinfo);
虽然它在生成polygon信息的时候需要花费点时间,但是你可以缓存下来并进行复用,我们计划将来直接在编辑器中生成polygon信息。

6.JS的WebView和VideoPlayer(支持原生和HTML5)
WebView和VideoPlayer已经移植到JS中,同时支持iOS,Android和Web浏览器。你可以在测试例中参考它们的使用方法:https://github.com/cocos2d/cocos2d-x/blob/v3/tests/js-tests/src/GUITest/UIWebViewTest/UIWebViewTest.js,https://github.com/cocos2d/cocos2d-x/blob/v3/tests/js-tests/src/GUITest/UIVideoPlayerTest/UIVideoPlayerTest.js。
7.支持点九图
点九图是一个可伸展的位图图片,它可以被用作Scale9Sprite的纹理。现在Cocos2d-x支持直接使用一个点九图文件来创建Scale9Sprite节点。更多信息请参考点九图图片格式和制作工具。你也可以参考我们的测试例以了解使用方法。
8.支持Android Studio
Cocos console现在支持使用Andriod Studio1.2编译和打包安卓程序,使用的时候带上–android-studio即可。
cocos run/compile -p android --android-studio
9.支持三星Enhanced API
对于Android 5.0+系统的三星产品,三星提供了一系列Enhanced API以优化Cocos2d-x游戏。它包含了一些很酷的特性,比如:性能加速API,省电模式API,动态FPS的API等等。目前这些API可以在https://github.com/cocos2d/cocos2d-x/blob/v3/cocos/platform/android/CCEnhanceAPI-android.h中找到,我们稍后将会提供一份更详细的文档。
正如你所看到的,v3.7中,我们采用了材质系统,集成了polygon sprite以提高我们的2d渲染,更重要的是,我们的3d功能变得越来越完整,3d物理,导航网格,以及之前的相机,3d精灵,3d粒子系统,3d光照,3d地形,天空盒。现在,你可以真正地使用Cocos来做一款3d游戏了。
下一步计划
在v3.8中,我们不会做一些新功能,而是会放慢速度,全力优化当前的2d和3d模块。
反馈
如果你可以测试这个版本,同时在帖子中反馈任何可能的bug,我们将不胜感激。尤其是材质系统,因为它会影响到整个基础渲染系统。
其实我只是想要一个简单的IDE能够一键创建项目然后专注写逻辑罢了。。。