unity 关于Assetbunlde

为了确保AssetBundle打出来的资源具有唯一性,做两方面考虑:

1 在做Assetbunlde包依赖时,必须这么选择(PushAssetDependencies,PopAssetDependencies)

2 在资源更新时,只有确保资源不会每次Build时都会产生不同的MD5值,才能确保资源的增量更新BuildPipeline.BuildAssetBundle  在build的时候添加一个选项 | BuildAssetBundleOptions.DeterministicAssetBundle 这样就能确保这份资源的唯一性。

 

遇到的问题:

DA目录下面的FA文件名为x.prefab,DB目录下面的FB文件名字也叫x.prefab。。在build Asset包的时候在StreamingAssets目录下面建立了DA和DB目录。

打包的时候FA文件打成了x.assetbundle放在DA目录下面;  FB达成了x.AssetBundle 放在DB目录下面,根据常理知识:在不同的文件系统下面的两个文件应该不会冲突的。

然而在用www加载的时候:

www 先加载 DA下面的 x.assetbundle,(没有问题)

www 再加载DB下面的x.assetbundle(提示:can't be loaded because another asset bundle with the same files are already)

(多么的让人恼火啊,可能是我没有找到相关的文献,我翻了很多的文章也没有找到类似的问题和解决办法,如果有的话,也希望有人帮忙指一下~~)

解决办法:

如果不想破坏目录的结构也可保留但是要确保文件的唯一性,将DA下的x.assetbundle 更名为 da_x.assetbundle;DB下的x.assetbundle更名为:db_x.assetbundle 在执行的时候就不会有问题了。

(我尝试过,在build完之后 手动的把x文件改名,结果还是报错,这应该是build的时候在assetbundle文件里写入了文件名字的信息,就算手动改名文件内的名称也是不会改变的)

转载于:https://www.cnblogs.com/vineleven/p/5127462.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值