添加构建扩展插件,没有执行AssetHandlers

引擎版本:3.4.2
操作系统:Mac
按照 扩展构建流程,添加构建扩展插件后,
我在hook.ts添加的内容有输出“—onBeforeBuild33”

问题:但在compressTextures添加以下代码,发现没有输出。重启cocos creator后,问题依然存在。

export const compressTextures: AssetHandlers.compressTextures = async (tasks) => {
    console.log("*********111*** compressTextures ***********");
}

你好,后来解决了吗

3.8遇到同样的问题,有解决方案嘛?通过编辑器自动生成的构建拓展插件也执行不到compressTextures

可从以下几个方面来判断自定义构建流程是否执行:

  1. 构建的输出日志在Developer Tools中,打开方式为菜单栏->Developer->Open Assets(Builder) DevTools
  2. CompressTextures函数只会在纹理压缩阶段时执行,也就是如果你没有配置纹理压缩,比如配置的png或者webp,那么就不会执行到这里。所以必须要在Texture Compression中设置一个纹理压缩类型(如astc etc 或pvrtc)
  3. 构建插件修改完毕后,记得要在拓展管理器中重新载入,也就是先刷新,然后关闭再打开构建插件
  4. builder.js里面的输出是在构建页面打开的时候才会输出,如果没有打开Project -> Build页面,则没有输出

这个问题,今天也遇到了,聊聊下解决方案:

  1. 修改自定义构建流程后,需要使用 tsc 将 ts 编译成 js;
  2. 修改后,需要在扩展管理器中,先重启下 自定义的扩展插件;
  3. 构建的时候,先点击右上角的 “清理全部缓存”后,重新构建