针对jpg图片资源启用压缩纹理,配置如下
新建的3.8.4项目在cocos creator3.8.4构建Android平台,可以正常导出 jpg格式
新建的3.8.5项目在cocos creator3.8.5构建Android平台,可以正常导出 jpg格式
如果用 3.8.4新建的项目 升级到3.8.5,在cocos creator3.8.5构建Android平台,导出的jpg格式是损坏的,无论原始jpg图片资源是什么,都是生成1个13k的图
请问怎么解决?
针对jpg图片资源启用压缩纹理,配置如下
如果用 3.8.4新建的项目 升级到3.8.5,在cocos creator3.8.5构建Android平台,导出的jpg格式是损坏的,无论原始jpg图片资源是什么,都是生成1个13k的图
请问怎么解决?
demo:
https://cdn-applet.flash8f.com/pandaHomeLand/app/web_cn/test_file/jpg_bug_demo.zip
补充发现:可能不是升级导致的,而是构建过程中有报错(但是我认为这个报错不应该影响jpg图片生成才对)
我试一下你的 demo 看看会不会复现
看了一下是你的插件问题,先根据报错信息,把插件的 hook.js 55 行的报错修复一下,在试一次
已修复插件报错,生成的图片仍然异常
新demo:
https://cdn-applet.flash8f.com/pandaHomeLand/app/web_cn/test_file/jpg_bug_demo2.zip
你把插件的 asset-handlers 的 compressTextures 去掉就可以了,应该是这里面的 pngToJPG 有问题,这个我们会完善一下构建插件的代码
好的,谢谢
提到这里,我说一下。这里的文档和ts定义是有一些问题。
interface ICompressTasks {
src: string; // Source file address
dest: string; // Address of the generated target file (default suffix is PNG, other types need to be changed manually)
quality: number | IPVRQuality | IASTCQuality | IETCQuality; // Compression quality 0 - 100 or other compression levels
format: ITextureCompressType; // Compression type
}
这里的task 其实不是这个结构了,quality 被放到options里面了。
如果还用这个结构来用task,这里的quality就是空的。如果在这里设置quality,打包流程也找不到设置的那个quality了。
好的,我反馈一下