做了个导出AssetBundle的小插件

之前说过,想研究一下资源的热更新问题。先撇开脚本的热更新,单纯从资源来说,AssetBundle是Unity3D自带的资源打包方式,用处还是蛮多的。比如一些需要编辑后使用的角色资源,或者一些需要在内部压缩的资源。所以考虑了一下,稍微就做了这么一个小插件:
做了个导出AssetBundle的小插件 - 阿赵 - 穷到掉渣的超级奶爸阿赵
选择需要打包的文件或者目录,选择Build之后,出现界面: 
做了个导出AssetBundle的小插件 - 阿赵 - 穷到掉渣的超级奶爸阿赵
里面可以选择发布的平台、是否导出所有关联的资源、导出后文件的扩展名、还是导出的路径都可以设置。 
做了个导出AssetBundle的小插件 - 阿赵 - 穷到掉渣的超级奶爸阿赵
 至于能导出的平台类型,是可以手动添加的。

之前有对阿赵感兴趣的人问我,你有没有做过导出AssetBundle的工具。其实导出AssetBundle是非常简单的事情,因为API里面有完全现成的代码,只需要直接建个类,然后把代码复制进去就可以了。
做了个导出AssetBundle的小插件 - 阿赵 - 穷到掉渣的超级奶爸阿赵
 
其中BuildAssetBundle方法有多种重载,可以选择是否设定资源包编译选项(BuildAssetBundleOptions)和目标发布平台(BuildTarget)。最简单的重载方法是只传进需要打包的主资源、所有打包的子资源和路径就可以打包成功了。其实如果你不填BuildAssetBundleOptions和BuildTarget,看看Unity的源码就知道,他是帮你做了默认值了,BuildAssetBundleOptions的默认值是BuildAssetBundleOptions.CollectDependencies | BuildAssetBundleOptions.CompleteAssets,意思是收集所有依赖的资源和强制打包整个资源。而BuildTarget的默认值是WebPlayer,也就是说假如你什么都不填,导出的是针对于WebPlayer平台的资源包。
做了个导出AssetBundle的小插件 - 阿赵 - 穷到掉渣的超级奶爸阿赵

Unity3D的AssetBundle有一个比较麻烦的地方,就是导出是需要指定平台,因为针对平台的不一样,导出时的资源压缩比例和一些设置会不一样,所以如果导出了webPlayer平台的,那你就只能在pc或者web上面加载,而在手机上面就不能加载了。
正是因为有这么一个麻烦的地方,所以我才会想做个可以操作的界面插件来进行导出,那样以后操作可能会方便一点。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值