Cocos Creator v2.2.0 测试版如约而至(10/16 更新 rc.5)

cc.view.setOrientation 接口应该是不支持原生的

请问下,你 demo 里的问题是

jsb.reflection.callStaticMethod("AppController", "setInterfaceOrientations:", "1");

这行在 v2.2 上失效了吗

这行是有实现的。因为构建后的工程太大了。我就单独把实现的文件 AppController.h,AppController.mm 放在demo下面了。 只需要正常构建demo,然后再替换 oc 下面的这两个文件就行了。 现在的问题是,ios这边已经成功旋转了(看状态栏),然后cocos这边 我分别试了 1.9.3的实现和 2.0.9的实现都在 2.2上失效了。并且基本将cocos所有暴露的api都试了试,最后都不能正常旋转。 依现象来看,当横屏转成竖屏的时候,点击事件的位置已经正常旋转了,但是画面没有旋转,而且只存在整个屏幕的下半截。

场景中同一种光源数量>=5就会疯狂报错, source is too large。
请问这个问题怎么解决?

这个问题从 2.1.1开始,一直就有了
https://forum.cocos.com/t/creator2-2-0-2/84224

就是不让你超过5啊。还不懂

怎么解决呢?改了源码也没用。总不能一个游戏就5个光源 吧。

一个场景,5个够多了吧,光是非常耗资源的,本身不能多用啊。

饥荒一个屏幕可以放一百多个萤火虫呢。。。。

我估计还是引擎的bug,或者故意被限制了

你能确认他是用的光源?

我明白了,原来,creator未使用延迟渲染,而是直接用的正向渲染,难怪那个js文件叫做forward-render。感谢楼上的解答

我还是不太清楚你的问题,我用你的 demo 在 v2.0.9 安卓上跑也是不正常的
creator 目前还没有接口支持在原生平台上修改屏幕朝向,只能在构建面板上预先设置屏幕朝向
或者暂时只能通过自己写原生接口,通过 jsb.reflection.callStaticMethod 来控制屏幕朝向

你的是指哪个接口在 2.0.9 上是正常的,到了 2.2 上就不行了呢?
还有是在哪个平台呢?web 平台吗?

多谢反馈,问题已修复,下个版本会更新。
https://github.com/cocos-creator-packages/jsb-adapter/pull/176

这个demo里面只是实现 ios原生的转向代码。没有弄安卓的。所以安卓不能正常跑。

mask 动态赋值 spriteFrame 报错

2.2.0 的 label 的 _updateRenderData(true) 函数没有,新赋值了label内容,读不到实时的label长度

和我上面是同一个问题吗,我这个是ui-mask组件,动态加载spriteframe产生的报错······················

上面知道getComponent(cc.Sprite),为什么下面就不会了呢?