就是我们开发的时候,常常把这个界面参考图,参考文档啥的和正式的资源就近放在同一个Asset Bundle文件夹里面,和正式使用的asset混在一起,这个是我们的惰性。再如声音资源,粒子资源,有多个效果,只用了最好的那个资源,其他的一般不删(怕领导要求用另外的备份资源)。
我们揪着小游戏来说(APK可以都放在main里面没有我们的疑问)
例如开发一个游戏合集,main里面放的是大厅,射箭游戏放在的Assets/G1文件夹,钓鱼放的是Assets/G2文件夹,这个G1, G2都设置成了Asset Bundle,是为了应付小游戏的4M分包。
那么开发射箭G1的时候,大量的界面参考图,设计文档等等如果不能放在G1里面,就会对资料管理有点费脑,要维护多个地方。如果能就近放在G1里面,但是又能保证它们不会被打包,这就省脑了。
为了向老版本兼容,Asset Bundle(正如resources工作的那样),默认都是可枚举的,全部打包的。如果我们程序人脑确认这里面的东西都是为了应付4M分包,不是为了字符串访问资源,那么,加上属性控制,使得这个Asset Bundle工作起来和main一样(自动过滤掉没被引用的资源),就非常完美了。
子文件夹嵌套Bundle也是同样出发点(为了偷懒省脑),就是总内容超过4M了,就需要一个小游戏多个Bundle了。
这上面的考虑都是基于强大的Bundle设计思路,你们2.4引入的Bundle非常牛,甩友商10条街。Bundle里面的不同优先级的Bundle资源会自动把资源往高优先级的的Asset Bundle转移,这个设计全球第一。