Cocos2d-JS v3.1 Beta发布了!

大家好,

Cocos2d-JS v3.1 Beta今天发布了!首先我想告诉大家的是,从3.0正式版到3.1 Beta,没有任何API改动,所以大家可以轻松尝试将自己的项目升级到v3.1。

Cocos2d-JS v3.1 Beta所带来的最大改进是:Web引擎的新渲染器,iOS8 WebGL支持以及Facebook SDK Beta2。尤其是新渲染器带来的性能提升是非常令人振奋的,不过这依然是一个Beta版本,新渲染器还存在一些bug,所以我们非常需要大家的帮助。请各位http://www.cocos2d-x.org/filedown/cocos2d-js-v3.1-beta.zip,1,尝试使用3.1的新Web引擎运行自己的项目,并将所有遇到的问题反馈给我们,我们会尽全力为大家带来更加稳定的新渲染器。非常感谢任何形式的帮助或反馈!

下面是Cocos2d-JS v3.1 Beta的发布说明:

Cocos2d-JS简介

Cocos2d-JS是Cocos2d-x的JavaScript版本,融合了Cocos2d-html5和Cocos2d-x JavaScript Bindings。它支持Cocos2d-x的所有核心特性并提供更简单易用的JavaScript风格API,并且天然支持原生、浏览器跨平台应用。

在3.x版中,Cocos2d-JS完成了不同平台工作流的彻底整合,为不同平台提供了统一的开发体验。无论开发web应用还是原生应用,都可以便捷地采用Cocos2d-JS实现“一次开发,全平台运行”。采用Cocos2d-JS开发的同一套JavaScript游戏代码,可以同时运行在Mac OS X, Windows, iOS, Android等原生平台、以及所有现代浏览器上,这将使得我们的开发者轻松覆盖几乎所有发行渠道,带来前所未有的机遇。另一方面,若开发者只想开发一款Web轻度休闲游戏,Cocos2d-JS也专门为此类游戏定制了Lite Version,直接将Cocos2d-JS Lite Version集成到页面中即可使用。

作为工作流整合后的版本,Cocos2d-JS v3.x兼具了简单和强大:新的JavaScript风格API使得编码,测试和发布环节都变得异常轻松简单;同时v3.x还提供了诸多强大的新特性,比如Spine动画支持,支持热更新的资源管理器,对象缓冲池,JS到Objective-C/JAVA反射等等。

下载

核心特性

  • 重构Web引擎的渲染器,新渲染器在未优化的情况下已带来显著的性能提升,接下来将进一步优化性能。
  • 发布Facebook SDK for Cocos2d-JS Beta2,与Facebook共同优化了其API并让SDK的表现更加稳定。
  • 在iOS 8上开启WebGL支持,相比于Canvas模式带来极大的性能提升。
  • 使用新的图形资源升级MoonWarriors示例游戏。
  • 升级Chipmunk到最新版本并完善其JavaScript绑定。

注意事项

关于JSB编译环境,还有一些限制条件需要满足:

  • NDK版本必须使用r9d
  • Xcode版本必须在5.1.1以上

从旧版本升级你的项目

如果你想升级你使用旧版本(从v3.0 Alpha开始)创建的项目到v3.1 Beta,你需要执行以下步骤:

  1. 下载Cocos2d-JS v3.1引擎包。
  2. 执行引擎包中的setup.py更新你的cocos命令。
  3. 使用cocos new命令创建一个新的基于v3.1的项目。
  4. 从你的旧项目中拷贝"src",“res”,“index.html”,“project.json”,"main.js"到第三步创建的新项目并覆盖。
  5. 最后你可能需要按照升级指南来升级你的项目以避免API不兼容的问题。

详细更改

更详细的改动列表和升级文档可以参见:

关于Cocos2d家族

  • Cocos2d-JS v3.1 Beta使用Cocos2d-x 3.2正式版作为JSB的底层实现
  • Cocos2d-JS v3.1 Beta暂不兼容Cocos Code IDE
  • Cocos2d-JS v3.1 Beta兼容Cocos Studio v1.2 - v1.5.0.1

如果遇到任何问题,你都可以向Cocos2d-JS开发者社区寻求帮助:

什么时候js能支持3D?

JSB下运行时有一大堆提示,但又可以正常运行,不知是不是和我编译后用了jscompile有关

cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_cocos2d_constants.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_cocos2d.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_cocos2d_extension.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_cocos2d_studio.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_cocos2d_ui.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_property_impls.js. Possible missing file.
cocos2d: cocos2d: fullPathForFilename: No file found at script/jsb_property_apis.js. Possible missing file.

Supported setting color of shadow for cc.LabelTTF

阴影字在JSB下无问题了,但在web下面,如果打开了renderMode = 1,则正常,如果是renderMode = 0, 阴影颜色还是无效

html5
cc.TableView.create 里面少个 new
cc.ControlSlider.create 创建时,参数不支持 sprite了

:2: 支持一个 呵呵

多谢大家的反馈!我会把这些问题逐一检查一遍

3D支持尚不在路线图中,不过如果了解JSB绑定机制的话,自己绑定也不会很困难

是的,跟这个有关系,这些提示没关系,最终会使用的是.jsc文件

谢谢反馈,new缺失的问题我会修复

cc.ControlSlider构造不支持cc.Sprite的原因是cc.ControlSlider的子Sprite是不能够共享的,所以为了避免用户用同一个Sprite创建不同的cc.ControlSlider而导致一些奇怪的问题,我们接受Texture文件,Texture对象,SpriteFrame对象等作为构造参数。

cocosd-js 的 compiler 可以保留变量名不混淆么?
deploy 之后的代码没法跟 ccbreader 一起用了
因为 ccbreader 都是用 字符串来获取变量的

使用下面语法即可:

/** @expose */
var variable;

详见Google Closure Compiler语法

能不能默认加入支持SQLite的功能模块?例如相关的类、方法什么的。。。。:2::2::2:

SQLite其实功能已经完成了,但是目前没有办法在3.1里面提供。如果你继续,可以看下江龙提交的PR,里面已经带了SQLite了。

或者在论坛里面找一下,已经有完整的SQLite攻略。

SQLite的教程:http://www.cocoachina.com/bbs/read.php?tid=226949&keyword=sqlite

spine 部分的绑定错误 脚本重新写一下吧

SkeletonAnimation 新增的函数 和删除的函数没做处理啊
加了好几个监听

textField的getString()不能用了