美文网首页
Unity场景打包测试记录

Unity场景打包测试记录

作者: 灰的狼 | 来源:发表于2018-05-24 14:06 被阅读0次

    测试1:
    将多个场景共用的Prefab\FBX\材质\贴图等打包到AssetBundle中,场景打包出的AssetBunlde文件也会依赖这些细分出来的AB.
    并且总体的资源大小也会下降.
    测试的Manifest如下:

    ManifestFileVersion: 0
    CRC: 278060267
    AssetBundleManifest:
      AssetBundleInfos:
        Info_0:
          Name: test_scene_1.unity3d
          Dependencies:
            Dependency_0: test_prefab_ab.unity3d
        Info_1:
          Name: test_scene_2.unity3d
          Dependencies:
            Dependency_0: test_prefab_ab.unity3d
        Info_2:
          Name: test_scene_3.unity3d
          Dependencies:
            Dependency_0: test_prefab_ab.unity3d
        Info_3:
          Name: test_mat_ab.unity3d
          Dependencies: {}
        Info_4:
          Name: test_prefab_ab.unity3d
          Dependencies:
            Dependency_0: test_mat_ab.unity3d
            Dependency_1: test_fbx_ab.unity3d
        Info_5:
          Name: test_fbx_ab.unity3d
          Dependencies:
            Dependency_0: test_mat_ab.unity3d
    

    测试2:
    细分打包的时候,如果只调整材质属性则打包结果只有材质所在AB二进制会有变化,用到该材质的场景打包出的二进制并不会变化.
    所以如果做细分打包,可以只比较打包后文件的二进制来比较是否有变化(可以忽略HASH).

    测试3:
    打包AssetBundle的时候,只提取公共依赖部分把公共依赖部分打成独立的AssetBundle,并记录下最后整个APK大小:339MB.
    打包AssetBundle的时候,不仅吧公共依赖部分打成独立的AssetBundle,还把只有被单个AssetBundle依赖的文件也打成独立的AssetBundle(按文件所在目录自动划分),记录下最后整个APK大小:395MB.
    对比结果发现细化打包后总包体会变大,网上查了一下应该是Unity内置的资源没有提取出来打成独立的AssetBundle从而使用到的地方都单独包涵了一份(参考这里:https://zhuanlan.zhihu.com/p/25111851).
    我想自己参考上面的文章也做一下这样的打包,但是卡在了提取内置资源的那一步,最后放弃了.觉得只提取公共部分也可以满足需求了.如果觉得有些AB包体过大就在打完包后检查下手动拆分体积过大的ab包就可以了.

    相关文章

      网友评论

          本文标题:Unity场景打包测试记录

          本文链接:https://www.haomeiwen.com/subject/mgcsjftx.html