【官网正式版更新】Cocos Creator v2.0.0 社区版发布贴

每次导入png图片


都是这样的,导致图片显示都不对。设置里把自动剪裁去掉了,还要怎么设置?????这改成自动的就可以,但是不能每次导入图片都改一次吧··

能知道点哪回来的啊,scene, query, relaunch 啥的啊
onShow带的参数东西不少呢,只是有些东西不知道啥意思。至少官方公布的那些还是要的

{“relaunch”:false,“scene”:1008,“reLaunch”:false,“scene_note”:“6502902275@chatroom:wxid_90v9c5vmjmsr21:1_wx04adebd6ca03209e_1190072403_1533879069_0”,“sessionId”:“SessionId@113164589#1533879156230”,“usedState”:2,“prescene”:2,“prescene_note”:“6502902275@chatroom:wxid_90v9c5vmjmsr21”,“clickTimestamp”:1533879156336,“query”:{}}

粒子系统加载异常

let node = new cc.Node();
let particle = node.addComponent(cc.ParticleSystem);
particle.file = cc.url.raw(‘resources/atom.plist’);
this.node.addChild(node);

报错 [cc.loader.load] resources must be non-nil.

@panda

为什么每次关掉prefab后,层级要全部展开并跳到最前面?节点多的时候找回去真痛苦~~

请问假设能保持 matrix 一致(我理解的一致:坐标一致,动作一致,那么计算出来的矩阵应该是一致的吧?)的情况下是否能保证drawcall不增加呢?
如果这个假设成立,我测试了一下发现drawcall还是会增加。

@panda 使用2.0测试了一下工程 发现同屏超过30个以上spine节点时(其中有同资源spine)性能反而不如1.10 ,很明显可以感受到,渲染压力太大导致的卡顿。fps里面render的耗时保持10以上。。。
然而在1.10中依赖同资源并存与一个父节点,可以保证低渲染压力。。

合并drawcall遍历渲染树的时候能加一种类似广度优先的遍历方法么,
图标列表什么的,用深度优先的遍历方式基本很难合并drawcall。因为图标上各种元素基本都是来自不同的图片集。

还有滚动列表可视区域外的drawcall似乎没有去掉。

第一张截图里大概有60个图标

第二张截图里是16个图标

第二章图里算上每个图标上的数字,drawcall也比第一个少的多

1赞

不能这么加载,要先用 cc.loader.loadRes 加载 particle 资源

我反馈一下

现在没有做这么细的判断,对于 spine 来说,因为两个节点完全重合的概率非常低,所以没有做这种优化。
你说的测试,是这些 spine 节点都可以批处理的情况下,如果你的游戏中 spine 角色很多的话,且不论你是否有办法把这些 spine 贴图都合并,也不论你是否能够将这些 spine 节点放在同一个层级下,至少我们可以说你的游戏相对比较重度。那么游戏逻辑一定不会少,尤其是控制 spine 动画,碰撞检测,战斗逻辑等,在我们观察下,相对重度的游戏,绝大多数情况下瓶颈都在 CPU,而不是 GPU,固然降低 draw call 很重要,但是针对瓶颈优化才是最有价值的。

可以大致算一下 2.0 这种做法节省的计算损耗,如果要批处理,所有顶点必须是全局坐标,那么 2.0 节省的计算量是:

Spine 个数 * 顶点数量 * Mat4 矩阵对顶点 vector 的乘法

尤其是使用了 mesh 的 spine,这里节省的计算损耗就更显著了

滚动列表还是建议尽量复用,你的第二张图是怎么做的?

第二张图就是总共只有16个图标,可视范围外没有图标

更新了2.0后,文字变模糊了,连fps的显示信息都是模糊的文字,怎么解决呢?

同样希望官方支持广度优先的渲染顺序,虽然我们定制引擎实现了这个功能,但是不支持有遮罩的节点,自己改的,用的也不放心

修改为custom 点击 应用 会自己跳回auto模式

1.9.3这样加载木有问题啊,一直用得好好的

那你咋不继续用 1.9.3 用啥2.0

2.0 我该怎么获取Label的实际大小?

以前可以直接获取 label的 width跟height

但现在 对 string 重新赋值后, width跟height都不变啊。

    var label = toast.getChildByName("text");
   cc.log(label.width, label.height);   //假设输出   100, 80
    label.getComponent(cc.Label).string = "不管这里是什么";
   cc.log(label.width, label.height);   /又还是100, 80

2.0 我该怎么获取实际大小?

我也想知道怎么获取文本大小。试了好多方法都不行,啊啊啊啊啊~~

读读源码。

赋值后调用一下label._updateRenderData(true);,再获取大小,或者等待下一帧再获取

谢谢。有效!

导入龙骨动画文件,如果tex.json里面imagePath配置的是错误png图片名称,导入的时候会导致资源管理器面板卡住,一直显示“加载中…”,强行关闭编辑器,打开变成图中那样的报错了,然后项目打不开了