新人求解: 很小白的一个资源加载问题

那那些加密改后缀的 是另外封装一套资源加载吗

比如通过拦截为cc.assetManager.downloader[‘downloadDomImage’]的处理方式能够加载到image元素
然后自己再封装成img->texture->spriteFrame吗 这个我确实也实现出来了 不过是不是也意味着要自己处理依赖和释放了

加密是 做其他下载 然后解密成图片 加载始终是图片那一套

1赞

嗯。应该是,要么就改引擎代码实现了。assetManager的loadAny的ext 后缀名选项也可以看看,可以强制指定用哪个后缀名的形式来进行处理。

1赞


我只做到了这一步 之前是cc.assetManager.downloader那里做文章 加载到的资源不是正常加载图片时的texture和spriteFrame 昨天直觉就告诉我还会涉及到cc.assetManager.factory 果不其然

难道到这一步了还没有大佬能够告知正确做法吗

顺便贴上引擎的相关代码

@wslx 大佬难道不能再进一步指点一下吗 你上面说的看似有用 但好像又什么都没说

需要的是随便改个后缀后 还能和.png图片一样加载到贴图资源 以及传入类型cc.spriteFrame后可以加载到精灵帧资源

也是挺无奈的 应该就这几个下钩子的地方 处理流程估计也大差不差了

需要用到assetManager.downloader下载器(parser解析器好像没用上 )
然后下载器是只能处理到imageAsset过的
必须再用到assetManager.factory做最后的资产加工 才能加载出texture和spriteFrame

心很累 虽然最后实现想要的效果了 只要把传的type进一步封装到自己的load里就好了

但是希望这只是抛砖引玉
问题很简单 就只是把图片后缀随便改个 然后依旧能够通过resources.load加载到贴图资源 并且传入type能够进一步加载到精灵帧资源

要看看是不是在其他平台上也是这样的。我感觉现在这个用法跨平台可能会有错误,可以测试一下。

1赞

后面就看各位大佬的了 希望能够真正做到自定义后缀也能同png后缀一样加载

问题很清晰 处理流程应该也就那几个下钩子的地方

在做资源的加解密,目前在出包的时候嵌入了到了打包流程来做加密工作,类似运行了CocosCreator.exe后生成好了jsb-link/asset目录后,遍历了这个目录下的png,通过blob模式读取后进行二进制的位置,
想咨询一下,现在解密的这个工作是不是要嵌到cc.assetManager.downloader.register方法中,具体怎么操作,我看你贴了一些代码想知道上面的运用 类似cc.assetManager.downloader[“downloadDomImage”]是必要重写的吗
环境是2.4.x

1赞

可以先看一下我后面发的帖子