Skip to content

Commit df03866

Browse files
committed
打包工具添加压缩格式
1 parent 4be5291 commit df03866

File tree

3 files changed

+37
-10
lines changed

3 files changed

+37
-10
lines changed

Assets/GameFramework/Editor/AssetBundleEditor/AssetBundleBuildEditor.cs

Lines changed: 35 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ public class AssetBundleBuildEditor :EditorWindow {
2222

2323
private static readonly Dictionary<BuildTarget,bool> _allTargets=new Dictionary<BuildTarget, bool>();
2424

25+
//压缩内容
26+
string[] _compressionOptionsContent =new string[]{"No Compression","Standard Compression (LZMA)","Chunk Based Compression (LZ4)"};
27+
2528
[MenuItem("Tools/AssetBundles Options %#O")]
2629
public static void AssetBundilesOptions()
2730
{
@@ -95,6 +98,12 @@ void OnGUI()
9598
}
9699
GUILayout.EndHorizontal();
97100

101+
//压缩格式
102+
GUILayout.BeginHorizontal("Box");
103+
GUILayout.Label("Compression:");
104+
_config.CompressOptions = EditorGUILayout.Popup(_config.CompressOptions,_compressionOptionsContent);
105+
GUILayout.EndHorizontal();
106+
98107
GUILayout.BeginHorizontal("Box");
99108
GUILayout.Label("BuildPath:");
100109
GUILayout.TextArea(string.IsNullOrEmpty(_config.BuildPath)?_rootPath:_config.BuildPath);
@@ -120,6 +129,9 @@ void OnGUI()
120129
}
121130
GUILayout.EndHorizontal();
122131

132+
//build targets----------------------------------------------------------------------------
133+
GUILayout.BeginVertical("Box");
134+
GUILayout.Label("Build Targets:");
123135
_scrollViewPos=GUILayout.BeginScrollView(_scrollViewPos,"Box");
124136
foreach (var item in _allTargets)
125137
{
@@ -131,7 +143,9 @@ void OnGUI()
131143
}
132144
}
133145
GUILayout.EndScrollView();
146+
GUILayout.EndVertical();
134147

148+
//确认更改--------------------------------------------------------------------------------
135149
GUILayout.BeginHorizontal();
136150
GUILayout.FlexibleSpace();
137151
if(GUILayout.Button("OK",GUILayout.Width(60)))
@@ -174,11 +188,21 @@ private static void SaveConfig()
174188
}
175189

176190
//资源打包
177-
private static void BuildTarget(BuildTarget target,BuildAssetBundleOptions options=BuildAssetBundleOptions.None)
191+
private static void BuildTarget(BuildTarget target)
178192
{
193+
//打包路径
179194
string buildPath=Path.Combine(_config.BuildPath,target.ToString());
180195
if(!Directory.Exists(buildPath))
181196
Directory.CreateDirectory(buildPath);
197+
//设置打包的相关选项
198+
BuildAssetBundleOptions options=BuildAssetBundleOptions.None;
199+
//设置压缩 默认LZMA
200+
if (_config.CompressOptions == 0)
201+
options |= BuildAssetBundleOptions.UncompressedAssetBundle;
202+
//LZ4
203+
else if (_config.CompressOptions == 2)
204+
options |= BuildAssetBundleOptions.ChunkBasedCompression;
205+
//打包
182206
BuildPipeline.BuildAssetBundles(buildPath,options,target);
183207

184208
//保存资源版本信息
@@ -245,15 +269,17 @@ private static void SavePlatformVersion(List<BuildTarget> targets)
245269
EditorUtility.OpenWithDefaultApp(_config.BuildPath);
246270
}
247271

248-
//ab包的配置文件信息
249-
[System.Serializable]
250-
public class AssetBundleConifgInfo
251-
{
252-
public int Version=0;
253-
public string BuildPath="";
254-
public List<int> BuildTargets=new List<int>();
272+
//ab包的配置文件信息
273+
[System.Serializable]
274+
public class AssetBundleConifgInfo
275+
{
276+
public int Version=0;
277+
public string BuildPath="";
278+
public int CompressOptions=1;
279+
public List<int> BuildTargets=new List<int>();
255280

256-
}
281+
}
257282

283+
258284
}
259285
}

Packages/manifest.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"dependencies": {
33
"com.unity.ads": "2.0.8",
44
"com.unity.analytics": "2.0.16",
5+
"com.unity.assetbundlebrowser": "1.7.0",
56
"com.unity.package-manager-ui": "1.9.11",
67
"com.unity.purchasing": "2.0.3",
78
"com.unity.textmeshpro": "1.2.4",
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"Version":0,"BuildPath":"","BuildTargets":[]}
1+
{"Version":0,"BuildPath":"","CompressOptions":1,"BuildTargets":[]}

0 commit comments

Comments
 (0)