Cocos Creator v2.4.6-p1 版本说明

嗯,下次会保留版本号,会更清晰一下

1赞

2.4.6p1现在有多少人升级了的?现在项目想升级到这个版本…

我升级了,我感觉还行增加的几个东西都挺实用的,特别是场景选择

项目升级版本后发现还是存在之前遇到的问题:
1.

报错,就自己修改了,
2.第二个就是在手机端收不到cc.game.restart的事件,

我就是看升级的东西还是实在,但是,就是不知道稳不稳…

建议图集设置默认压缩级别, 只要不设置, 导出的图片还是很大, 1024*1024 都4M了!

现在的默认级别跟原来版本是一致的呀(6 级)。你确认一下?

啥情况, 开了个坏头

应该搞成 2.4.6.1或2.4.7,

重新覆盖版本很混乱啊

是啊,我刚上面夸他终于出了修复版本2.4.6.1,结果。。。。他居然用2.4.6.1去覆盖2.4.6,然后改名2.4.6,沃日,真的是略显“业余”程序员

最近总是出现,预览的时候大量脚本依赖莫名其妙丢失的问题。
修改并保存出现警告的脚本,触发重新编译,能暂时解决。重启IDE又会出现依赖丢失。
在quick_compile_script 里面的scripts
里面看到,该确实的deps确实为{},而实际是有require其他脚本的。
本身是否是循环依赖引起,或者文件数量太多引起,不得而知,有没有什么好办法?天天浪费时间,希望引擎组的大大能注意到这个情况。

v2.4.6-p1对应的engine分支是哪个?

v2.4.7

有没有刚好对应到这个帖子的分支?
v2.4.7的内容比帖子的新。

Mask 白屏的问题有解决吗?

2.4.6给场景拖入一个"图片2.1",得到的节点名称为图片2。点被分隔,1被吞了。@jare @EndEvil @panda

246.zip (590.3 KB)

我们是用 tag 打标记的,tag 里面有所有版本~

246插件,如果消息函数用class语法,会出现消息不识别class方法,但是能识别class的函数属性。

这个原版插件是ts编译成js的,使用了class语法,和附件的手写js例子是一样的效果。

246.zip (590.3 KB)

'use strict';

class FuncObj {

    'say-hello1'() {

        Editor.log('Hello World! 11111111111');

    }

    'say-hello2'=()=> {

        Editor.log('Hello World! 222222222222');

    }

}

module.exports = {

    load() {

        // execute when package loaded

    },

    unload() {

        // execute when package unloaded

    },

    // register your ipc messages here

    messages: new FuncObj,

};

@EndEvil @panda

成员函数不是实例上的属性,只是 prototype 上的,自然不会被收发了。消息的接收方需要有能力识别并且反序列化(同样 new 一个)FuncObj 才行。
建议自己转成 JSON 进行传送。

1赞

我估计是引擎把插件序列号了之后扔给调度中心,然后调度管理器反序列化来实现在调度中心处判断是否有某个名称的消息响应函数。

但是如果可以把消息扔给各个子模块自行判断 if(typeof module.message[‘message_name’] == “function”)就更加贴心了,你们官方都说了要彻底typescript化,实际一些东西(例如插件)还是给electron牵着走。

再不济那个JSON.stringify自己实现一下,应能彻底解决,这样Creator就能从H5第一走向Game Engine第一了。

Creator 版本2.4.6-p1, Mac OS 11.5.2,启动后运行1~2次模拟器就疯狂打印如下错误,且场景编辑器中看不到任何东西了,没有升级之前的2.3.4是好的,升级后就这样了。简直没法用。弄个helloworld工程也一样,现在不得已只能降级了。
TypeError: Failed to execute ‘shaderSource’ on ‘WebGLRenderingContext’: parameter 1 is not of type ‘WebGLShader’.