查看: 2537|回复: 4
打印 上一主题 下一主题

[其他] AssetBundle中的一个坑-DeterministicAssetBundle与文件名

[复制链接]

2722

主题

42

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
38268
精华
111

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2014-11-24 01:43:12 |只看该作者 |倒序浏览

记录一下做动态更新时遇到的AssetBundle的一个坑:
为了确保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文件里写入了文件名字的信息,就算手动改名文件内的名称也是不会改变的)

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

hyui    

1

主题

2

听众

6671

积分

高级设计师

Rank: 6Rank: 6

纳金币
2715
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-11-24 02:27:10 |只看该作者
Great share !!
回复

使用道具 举报

4

主题

2

听众

1742

积分

助理设计师

Rank: 4

纳金币
110
精华
0

活跃会员

板凳
发表于 2014-11-24 13:19:07 |只看该作者

Great share !!
回复

使用道具 举报

suke    

1

主题

1

听众

6155

积分

高级设计师

码农

Rank: 6Rank: 6

纳金币
4980
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

地板
发表于 2014-11-24 15:23:08 |只看该作者
楼主可能忽略了DeterministicAssetBundle的另一个用途,当用pop/push打包时,假如A和B场景都依赖C资源,那如果打出来的资源在同一个目录的话,前者打包出来的C就会被后者所覆盖,如果不加此选项的话,就会导致A场景丢失C资源。加上后前后都是一个id,所以覆盖后仍然Ok。

当然,我认为的解决办法是:尽量资源不要重名,可以根据用途加个前缀。
回复

使用道具 举报

16

主题

1

听众

1万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
3
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2014-11-25 20:44:14 |只看该作者
做网游必须学习了, 多谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-9-22 21:20 , Processed in 0.129480 second(s), 31 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部