Cocos Creator 3.8.0 alpha 社区版公测

提个功能建议,支持构建时 bundle 加载顺序控制。因为现在如果想控制部分脚本提前加载只有三种方式

  • npm,不利于自定义脚本,只适用于库

  • 修改启动脚本,迭代困难,每次cocos版本变更都得去检查一遍,对于新手也不友好

  • 插件脚本内重载 loadBundle,虽然可以用但不是什么好的办法

这次,有希望升级 babel 版本吗?

希望支持

  • typescript 4.3 - 5.0 的所有特性(可以不包括新装饰器)
  • 命名导出 export * as name from “./file”(最佳的用于替代 namespace)
1赞

我现在是 import * as xxx from “…” 后再 export default xxx,可以暂时解决,不过还是希望支持 export * as

1赞

那个用default 模式可以用。不急。 现在最急的是 xcode14.3. 发布到达编译的时候,提示找不到xcode。 c2.x版本都这样

https://forum.cocos.org/t/topic/148314
这个是 最急的。 xcode 更新到14.3版本。 以往能正常构建的项目,卡在编译这一步。报错事: xcode 没有安装

这个是 link不能构建,default可以构建发布的链接。

1天过去了。 完全没有往日发布版本的激情.

这次也太低调了,连我都没发现。 明天我要玩它一整天!

冲了再说:thinking:

NewProject.zip (34.9 KB)

      assetManager.preloadAny( [{path:"prefab/Test"},{path:"config/a"}],null,(finished: number, total: number, item: AssetManager.RequestItem) => {

    },(err: Error | null, data: AssetManager.RequestItem[])=>{
        console.log(err);
    })

    assetManager.loadAny([{path:"prefab/Test"},{path:"config/a"}], {'myParam': 'important'}, (a,b)=>{
        console.log(a,b);
    });

这个接口报错

用这两个接口,使用路径来加载的话,需要传入 bundle 名称,否则路径不知道去哪个 bundle 下找,比如 loadAny(xxx, { bundle: ‘resources’ }, cb);

我想问下3.8正式版粒子系统是否会有调整/优化/完善

加了3.5.2可以测试通过,3.8.0不行
image

    assetManager.preloadAny({path:"prefab/Test"}, { bundle: 'resources' },(finished: number, total: number, item: AssetManager.RequestItem) => {

    },(err: Error | null, data: AssetManager.RequestItem[])=>{
        console.log(err);
    })

    assetManager.loadAny({path:"prefab/Test"}, { bundle: 'resources' }, (a,b)=>{
        console.log(a,b);
    });

麻烦帮忙确认下,

  1. 这两个资源是否在 resources 目录下
  2. 直接用 resources.load/preload 是否能加载到
  3. 是在什么环境/平台下运行的代码

我们正在实现一个全新的粒子系统,3.8 可能会有点来不及,我们可能会在 3.8-3.9 之间的某个时间段,提供提前试用,到时候会以插件形式,或者是直接 pr 的形式,提供出来。

image NewProject 2.zip (46.4 KB)

assetManager.preloadAny({path:“prefab/Test”}, {type:Prefab, bundle: ‘resources’ },(finished: number, total: number, item: AssetManager.RequestItem) => {

    },(err: Error | null, data: AssetManager.RequestItem[])=>{
        console.log(err);
    })

    assetManager.loadAny({path:"prefab/Test"}, {type:Prefab, bundle: 'resources' }, (a,b)=>{
        console.log(a,b);
    });

    resources.preload("prefab/Test",(err,a)=>{
        console.log(err,a)
    })
    
    resources.load("prefab/Test",(err,a)=>{
        console.log(err,a);
    })

引用

好的,我们确认一下

嗯,作为目前 2.x 的 2d 项目的开发者,其实最关注的就是升级到 3.x 后 2d 方面的性能和质量是否还是和之前 2.x 一样。

我估计大部分用 2.x 的开发者关注点也跟我是一样的,对于 3.x 我们能够理解在 3D 方面还需要时间去积累。但是对于 2D 方面,如果性能和质量能和之前 2.x 持平,其实就有很强的意愿去升级了

3赞

没错,我们也重视 2D 这部分内容,之前也做了原生化这些性能优化工作。但是目前整个 2D 和通用的流程显得很割裂,2D 单独合批,2D 与 3D 无法穿插,还有诸如 2D 如何接入后效,2D 接入裁剪流程等问题都是在现有结构上很难去调整的,所以现阶段,结构调整也是我们一个非常重要的目标,我们需要先把架构调整到我们期望的样子,性能优化的价值才能体现出来。现在 3.x 可能在性能方面相较 2.x 比较差,但是后续的空间是很大的,我们的目标并不是和 2.x 持平,应该是要比 2.x 要好,其实 2.x 的性能本来也不怎么好。