[unity]AssetBundle加载

本文详细介绍了Unity中资源从URL加载到内存的具体流程,包括WWW、AssetBundle和Asset三个阶段的加载过程及其对内存的影响,并对比了压缩与非压缩资源在不同阶段的内存占用情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 加载
    • 大致经历以下过程
      • WWW
      • AssetBundle
      • Asset
    • WWW
      • 加载:通过url加载
      • 内存大小:
        • 压缩资源:翻倍(为什么会得出翻倍?)
        • 非压缩:几乎相同
    • 内存对象:WebStream
  • AssetBundle
    • 加载:随着WWW加载,第一次访问的时候会在内存生成一个SerializeFile,内存也会跟着增加0.4M左右(这个0.4M是什么?)
    • 内存大小:在WWW的基础上增加0.4M(非固定)
    • 内存对象:SerializeFile(archive/Cab-XXXX)
  • Asset
    • 加载:AssetBundle.LoadAsset
      • 相关的脚本,shader,Asset,Transform,GameObject都会被加载进来,存放在内存的Asset下
    • 大小:完整大小,(会对相关的资源进行一次解压)
    • 依赖项
      • 如果该asset依赖到了其他AssetBundle,需要把相关的assetBundle也加载了(即获得相关的SerializeFile)
  • Instance
    • 内存对象:SceneMemory
  • 测试
    • 资源:toon knight-brown
      • 压缩前:(6.5M)
        • 依赖(19个文件)
          • animation(3.41)
          • texture(2.6M)
          • prefab(0.159M)
        • 运行前:60.2M
        • 加载www,66.9M,up6.7M
        • 加载assetBundle,68.9,up2M
        • loadAsset, 89.3M, up20M
        • WWW.Dispose,72.4,down27M
        • AssetBundle.Unload(false),64.2M,down8M
        • spawn:64.2
        • despawn:64.2
        • prefab.destory():60.2
      • 压缩后:(2M)
        • 依赖(19个文件)
          • animation(1.6M)
          • texture(0.3m)
          • prefab(0.1m)
        • 运行前:58.9M
        • 加载www,62.3M,up3.4M
        • 加载assetBundle,64.3M,up2M
        • loadAsset:85M,up26M
        • WWW.Dispose:68.6M,down16
        • AssetBundle.Unload(false),68.4,down0.2
        • spawn:68.5M,up0.1M
        • Despawn:68.5M
        • Prefab.Destory(true),64M, down4
    • 资源:example_01_totalprop_scene_01,加载前56.7M
      • 压缩前:26.5M
        • 无依赖
        • 加载www,84.0M,涨27.3M
        • 加载ab,84.5M,涨0.5M
      • 压缩后:5.15M
        • 无依赖
        • 加载www,67.3M,涨10.6M
        • 加载ab,67.8M,涨0.5M
        • unload ab,56.7M,恢复原来的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值