AB包

AB包创建,资源打包
AB包加载,加载使用
AB包依赖关系
AB打包和使用的设计
AB打包工具的编写
AB资源加载和管理

AB打包步骤:

  1. 打标记

  2. 后缀名是assetbundle (场景打包后缀是U3d)

  3. 打包的脚本必须放到Editor文件夹下,不需要继承MonoBehavior

  4. 什么是AssetBundle?
    (1) 在unity编辑器里面一些文件。可以运行环境中动态加载。
    (2) 包括:
    ① Prefab
    ② 材质
    ③ 贴图
    ④ 场景
    (3) 就是把一些资源文件和场景文件以某种加密方式,(LZMA算法),保存的一个文件。
    (4) 可以保存在本地,在客户端运行的时候就可以加载AssetBundle(也可以保存到远程服务器)
    (5) 涉及到更新
    ① 打包AssetBundle
    ② 上传服务器
    ③ 客户端运行的时候,检查一下版本,如果不一样

  1. 每个客户端MD5和服务器进行比较,哪个不一样就去服务器下载最新的包。
  2. SVN:每一个版本都有一个版本号,检查一下版本号,如果不一样就去服务器。下载最新的包,替换本地的包。
    (6) Http协议:发送一次就请求一次
    (7) Socket 时时通讯
    2.Resources的区别
    (1) 其实差别不大,Resources把目录下的东西全都自己打包。
    (2) Resources.Load 加载资源
    (3) 游戏一旦发布,里面的内容都包裹在项目里面,就不能修改不能更新。
    3.AssetBundle的依赖关系:
    (1) 有一个模型,上面有材质,就可以说模型依赖材质
    (2) 在加载资源的时候,要先加载依赖关系,再加载自身。
    (3) 在卸载资源的时候,先卸载自身,再卸载依赖关系。

mainfest 文件介绍:crc 为校验码 通过这个码检查是否完整Assets 为包里包含了哪些资源文件Dependencies 为包的依赖AssetBundleMainfest anm = new AssetBundleMainfest();anm.GetAllDependencies();anm.GetAllAssetBundles();在加载资源的时候,要先加载依赖关系,再加载自身。在卸载资源的时候,先卸载自身,然后再看自身所依赖的AssetBundle还有没有以来的AssetBundle,如果没有就不能卸载,有就可以卸载。

管理所有场景的类 -> 所有包的管理 场景内 -> 包所依赖关系 -> 包的加载 WWW -> 包里的资源加载 AssetBundle.Load

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值