搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 北漂太久想回家 > unity 自带增量打包Assetbundle测试

unity 自带增量打包Assetbundle测试

北漂太久想回家 2020-11-22

之前一直看到别人说,unity5.X之后,可以自动进行增量打包,也就是在打Assetbundle的时候,只会对发生过修改的资源进行重打AB,未发生修改的资源不会重新打AB,一直也不知道这个是怎么操作的,最近查了一些资料,终于弄明白了

unity5.x之后,打AB的时候,会生成一份Manifest文件,unity在打AB的时候,首先会自动检查Manifest内的文件的hash值是否发生变化,如果发生变化,才会重新进行打AB操作,而且还有一点需要注意的是,unity提供两种方式打AB,一种是给资源设置AB名称,然后打AB;另一种是自己添加需要重打AB的资源进行打包,好像只有设置资源名称这种方式,可以进行自动增量打包。

测试代码



using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;
public class ABTools { /// <summary> /// 添加asset bundle 名称 /// </summary> /// <param name="GUIDs"></param> /// <param name="bundleName"></param> private static void AllInOne(string[] GUIDs, string bundleName) { for (int i = 0; i < GUIDs.Length; i++) { Debug.Log("id is " + GUIDs[i]); string assetPath = AssetDatabase.GUIDToAssetPath(GUIDs[i]); if (assetPath.LastIndexOf('.') == -1) { continue; } AssetImporter assetImporter = AssetImporter.GetAtPath(assetPath); if (assetImporter == null) { continue; } assetImporter.assetBundleName = bundleName; } }
private static BuildAssetBundleOptions GetBuildOption() { return BuildAssetBundleOptions.DeterministicAssetBundle; }
[MenuItem("Tool/Build For select Folder")] public static void BuildSelectFolder() { string assetPath = AssetDatabase.GetAssetPath(Selection.activeObject); string[] templateAnimationGUIDArray = AssetDatabase.FindAssets("", new string[] { assetPath }); string outPath = Application.dataPath + "/../AssetBundle"; if (!System.IO.Directory.Exists(outPath)) { System.IO.Directory.CreateDirectory(outPath); } AllInOne(templateAnimationGUIDArray, "imageAssets"); BuildPipeline.BuildAssetBundles(outPath, GetBuildOption(), BuildTarget.StandaloneWindows); }}

在项目中,给资源设置名称为 imageAssets,和 imageAssets2

第一次构建的时候,生成初始化AB资源,然后修改AB名称为imageAssets的某一张图片格式,重新打包AB,只有名称为imageAssets的哪一个AB被重打



版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《unity 自带增量打包Assetbundle测试》的版权归原作者「北漂太久想回家」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注北漂太久想回家微信公众号

北漂太久想回家微信公众号:gh_ed387e5916f7

北漂太久想回家

手机扫描上方二维码即可关注北漂太久想回家微信公众号

北漂太久想回家最新文章

精品公众号随机推荐