creator3.7.4 打包android后spine动画的atlas和png都在main包,只有json在指定的assetbundle.
资源管理器中,atlas,png和json都是放在一起在assetbundle目录下的,为什么atlas和png进不了assetbundle?
可以看下,是不是主包中有挂载
主包有资源引用了分包,比如prefab,会复制一份
起初我也是这么认为的.无非是哪里不小心被主包引用了.但实际上没有.
我的项目是从3.6.0接手做的.后来升级到了3.7.4.
解决方法:关掉cocoscreator,把spine动画的atlas.meta,png.meta全部删掉.再启动cocoscreator,打包后正常了.重新生成了meta文件就正常了.(由于spine动画引用的都是json,只要json.meta不重建,项目内的引用就不用管)
然后android包打包后也出现了资源找不到的问题.通过删除项目下的temp和library解决.
看来可能是升级版本的问题,学习了
并不是版本升级的问题,版本升级似乎导致.manifest文件无法被挂载到TextAssets类型中加载,我就改成了manifest.txt文件.
而我使用的是官方的热更新方案,在这个方案中,会生成project.manifest和version.manifest,我在首场景中挂载了project.manifest.txt(我把官方的热更方案加了个txt以解决无法读取的问题)
我发现只要挂载这个txt,txt中列出的资源就会被打包进main包,因为我的首场景是main包.
所以改成挂载version.manifest.txt即可.热更的方案也能继续使用,它应该只是用里面的url而已.
(挺出乎意料的就是竟然会定位txt文件里面的资源位置,把这里面记录的资源都算作引用,还是说manifest文件是个例外,我原本以为只有在属性检查器里面挂载的那些,也就是在prefab文件或者scene文件里面引用的uuid才会被关联进来)