一、 同一个 BuildPipeline.PushAssetDependencies(); BuildPipeline.PopAssetDependencies(); 内包裹的的打包资源有依赖关系,可能是和BuildAssetBundleOptions有关系。如下前后打包的atlas是有依赖关系的。加载时只加载最后生成的assetbundle,是不会显示的,必须先加载出第一个。- BuildPipeline.PushAssetDependencies();
- for (int i = 0; i < _atlas.Length; i++)
- {
- targetPathName = targetPath + target.ToString().ToLower() + "_" + _atlas[i].name + ".assetbundle"; //assetbundle存放的目标路径
- bool be = BuildPipeline.BuildAssetBundle(_atlas[i], null, targetPathName, options, target); //将图集分别打包
- Debug.Log(be);
- }
- BuildPipeline.PopAssetDependencies();
复制代码二、BuildAssetBundleOptions。
使用BuildAssetBundleOptions.UncompressedAssetBundle 打包不会压缩资源,因此一般图集包选这个会很大的,所以一般不会选。 使用AssetBundle.CreateFromFile(string) 此同步方法读取assetbundle,此assetbundle包必须是BuildAssetBundleOptions.UncompressedAssetBundle生成的非压缩的包。 因此打包的时候应根据需要权衡哪些需要UncompressedAssetBundle,哪些不需要UncompressedAssetBundle。 也可以分不同的方式读取,一些用www,一些用AssetBundle.CreateFromFile。
|