官方大大看过来,请问微信小游戏压缩纹理底层实现是怎样的?

cocos打包时如果图片格式同时输出3种格式:png,pkm,pvr。微信小游戏要求主包只保留少量启动用的资源,大部分游戏资源配置在远程cdn上。远程cdn同时存在 xxx.png, xxx.pkm xxx.pvr三份图片。

问题1:如果有一部ios手机运行微信小游戏,小游戏要渲染一个prefab,小游戏需要从远程cdn下载这个prefab,这个prefab引用一份纹理T。cocos是根据当前手机平台(Android,ios)下载其中一份文件(ios只下载T.pvr)?还是下载全部的文件(ios把 T.png, T.pkm , T.pvr3份文件全下载到本地)?

问题2:运行微信小游戏时,cocos会不会根据手机平台(Android,ios),来选择对应的压缩纹理?(ios使用T.pvr 而不是 T.png)

问题3:我用的cocos creator 2.4.3 ,以上问题涉及的源码在哪个文件,多少行?

引擎每一张图片都可以单独设置在微信小游戏上 输出多少种纹理格式
每张图片输出纹理格式数量都会记录在json文件中
运行时引擎会根据设备支持情况 优先选择压缩纹理 如果没有输出对应格式或设备不支持 将会使用png
也就是说 服务器cdn需要保留3分资源。客户端运行只会取1份