diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderSetting.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderSetting.cs
index 78e4abdb..4aee18d5 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderSetting.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderSetting.cs
@@ -18,18 +18,6 @@ namespace YooAsset.Editor
EditorPrefs.SetInt(key, (int)buildPipeline);
}
- // EBuildMode
- public static EBuildMode GetPackageBuildMode(string packageName, EBuildPipeline buildPipeline)
- {
- string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildMode)}";
- return (EBuildMode)EditorPrefs.GetInt(key, (int)EBuildMode.ForceRebuild);
- }
- public static void SetPackageBuildMode(string packageName, EBuildPipeline buildPipeline, EBuildMode buildMode)
- {
- string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildMode)}";
- EditorPrefs.SetInt(key, (int)buildMode);
- }
-
// ECompressOption
public static ECompressOption GetPackageCompressOption(string packageName, EBuildPipeline buildPipeline)
{
@@ -89,5 +77,17 @@ namespace YooAsset.Editor
string key = $"{Application.productName}_{packageName}_{buildPipeline}_EncyptionClassName";
EditorPrefs.SetString(key, encyptionClassName);
}
+
+ // ClearBuildCache
+ public static bool GetPackageClearBuildCache(string packageName, EBuildPipeline buildPipeline)
+ {
+ string key = $"{Application.productName}_{packageName}_{buildPipeline}_ClearBuildCache";
+ return EditorPrefs.GetInt(key, 0) > 0;
+ }
+ public static void SetPackageClearBuildCache(string packageName, EBuildPipeline buildPipeline, bool clearBuildCache)
+ {
+ string key = $"{Application.productName}_{packageName}_{buildPipeline}_ClearBuildCache";
+ EditorPrefs.SetInt(key, clearBuildCache ? 1 : 0);
+ }
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleSimulateBuilder.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleSimulateBuilder.cs
index 9b5e86f5..d3e1962c 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleSimulateBuilder.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleSimulateBuilder.cs
@@ -15,7 +15,6 @@ namespace YooAsset.Editor
buildParameters.BuildinFileRoot = AssetBundleBuilderHelper.GetStreamingAssetsRoot();
buildParameters.BuildPipeline = EBuildPipeline.EditorSimulateBuildPipeline.ToString();
buildParameters.BuildTarget = EditorUserBuildSettings.activeBuildTarget;
- buildParameters.BuildMode = EBuildMode.ForceRebuild;
buildParameters.PackageName = packageName;
buildParameters.PackageVersion = "Simulate";
buildParameters.FileNameStyle = EFileNameStyle.HashName;
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildParameters.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildParameters.cs
index dfd5bd22..c5707ae7 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildParameters.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildParameters.cs
@@ -31,11 +31,6 @@ namespace YooAsset.Editor
///
public BuildTarget BuildTarget;
- ///
- /// 构建模式
- ///
- public EBuildMode BuildMode;
-
///
/// 构建的包裹名称
///
@@ -52,7 +47,12 @@ namespace YooAsset.Editor
public string PackageNote;
///
- /// 是否启用共享资源打包
+ /// 清空构建缓存文件
+ ///
+ public bool ClearBuildCacheFiles = false;
+
+ ///
+ /// 启用共享资源打包
///
public bool EnableSharePackRule = false;
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskCreateReport.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskCreateReport.cs
index fb9c4476..b9cfb833 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskCreateReport.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskCreateReport.cs
@@ -28,7 +28,6 @@ namespace YooAsset.Editor
buildReport.Summary.BuildSeconds = BuildRunner.TotalSeconds;
buildReport.Summary.BuildTarget = buildParameters.BuildTarget;
buildReport.Summary.BuildPipeline = buildParameters.BuildPipeline;
- buildReport.Summary.BuildMode = buildParameters.BuildMode;
buildReport.Summary.BuildPackageName = buildParameters.PackageName;
buildReport.Summary.BuildPackageVersion = buildParameters.PackageVersion;
buildReport.Summary.BuildPackageNote = buildParameters.PackageNote;
@@ -42,6 +41,7 @@ namespace YooAsset.Editor
buildReport.Summary.AutoCollectShaders = buildMapContext.Command.AutoCollectShaders;
// 构建参数
+ buildReport.Summary.ClearBuildCacheFiles = buildParameters.ClearBuildCacheFiles;
buildReport.Summary.EnableSharePackRule = buildParameters.EnableSharePackRule;
buildReport.Summary.EncryptionClassName = buildParameters.EncryptionServices == null ? "null" : buildParameters.EncryptionServices.GetType().FullName;
if (buildParameters.BuildPipeline == nameof(BuiltinBuildPipeline))
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskGetBuildMap.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskGetBuildMap.cs
index 190d9a63..06ebfda2 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskGetBuildMap.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BaseTasks/TaskGetBuildMap.cs
@@ -15,7 +15,6 @@ namespace YooAsset.Editor
public BuildMapContext CreateBuildMap(bool simulateBuild, BuildParameters buildParameters)
{
BuildMapContext context = new BuildMapContext();
- var buildMode = buildParameters.BuildMode;
var packageName = buildParameters.PackageName;
Dictionary allBuildAssetInfos = new Dictionary(1000);
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskCopyBuildinFiles_BBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskCopyBuildinFiles_BBP.cs
index 807093eb..28e6c420 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskCopyBuildinFiles_BBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskCopyBuildinFiles_BBP.cs
@@ -12,14 +12,9 @@ namespace YooAsset.Editor
{
var buildParametersContext = context.GetContextObject();
var manifestContext = context.GetContextObject();
- var buildMode = buildParametersContext.Parameters.BuildMode;
-
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
+ if (buildParametersContext.Parameters.BuildinFileCopyOption != EBuildinFileCopyOption.None)
{
- if (buildParametersContext.Parameters.BuildinFileCopyOption != EBuildinFileCopyOption.None)
- {
- CopyBuildinFilesToStreaming(buildParametersContext, manifestContext.Manifest);
- }
+ CopyBuildinFilesToStreaming(buildParametersContext, manifestContext.Manifest);
}
}
}
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskEncryption_BBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskEncryption_BBP.cs
index ff2cf5b8..cac93eeb 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskEncryption_BBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskEncryption_BBP.cs
@@ -7,12 +7,7 @@ namespace YooAsset.Editor
{
var buildParameters = context.GetContextObject();
var buildMapContext = context.GetContextObject();
-
- var buildMode = buildParameters.Parameters.BuildMode;
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
- {
- EncryptingBundleFiles(buildParameters, buildMapContext);
- }
+ EncryptingBundleFiles(buildParameters, buildMapContext);
}
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskPrepare_BBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskPrepare_BBP.cs
index 4c7f6dfb..729a35e7 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskPrepare_BBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuildTasks/TaskPrepare_BBP.cs
@@ -24,8 +24,8 @@ namespace YooAsset.Editor
throw new Exception(message);
}
- // 强制构建删除包裹目录
- if (buildParameters.BuildMode == EBuildMode.ForceRebuild)
+ // 删除包裹目录
+ if (buildParameters.ClearBuildCacheFiles)
{
string packageRootDirectory = buildParameters.GetPackageRootDirectory();
if (EditorTools.DeleteDirectory(packageRootDirectory))
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuiltinBuildParameters.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuiltinBuildParameters.cs
index 84fbb406..a5b33b66 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuiltinBuildParameters.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/BuiltinBuildPipeline/BuiltinBuildParameters.cs
@@ -39,7 +39,7 @@ namespace YooAsset.Editor
else if (CompressOption == ECompressOption.LZ4)
opt |= BuildAssetBundleOptions.ChunkBasedCompression;
- if (BuildMode == EBuildMode.ForceRebuild)
+ if (ClearBuildCacheFiles)
opt |= BuildAssetBundleOptions.ForceRebuildAssetBundle; //Force rebuild the asset bundles
if (DisableWriteTypeTree)
opt |= BuildAssetBundleOptions.DisableWriteTypeTree; //Do not include type information within the asset bundle (don't write type tree).
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskBuilding_RFBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskBuilding_RFBP.cs
index cacb1df9..b307a233 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskBuilding_RFBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskBuilding_RFBP.cs
@@ -10,14 +10,8 @@ namespace YooAsset.Editor
void IBuildTask.Run(BuildContext context)
{
var buildParametersContext = context.GetContextObject();
- var buildParameters = context.GetContextObject();
var buildMapContext = context.GetContextObject();
-
- var buildMode = buildParameters.Parameters.BuildMode;
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
- {
- CopyRawBundle(buildMapContext, buildParametersContext);
- }
+ CopyRawBundle(buildMapContext, buildParametersContext);
}
///
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskEncryption_RFBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskEncryption_RFBP.cs
index 6e406763..22086fd2 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskEncryption_RFBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskEncryption_RFBP.cs
@@ -7,12 +7,7 @@ namespace YooAsset.Editor
{
var buildParameters = context.GetContextObject();
var buildMapContext = context.GetContextObject();
-
- var buildMode = buildParameters.Parameters.BuildMode;
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
- {
- EncryptingBundleFiles(buildParameters, buildMapContext);
- }
+ EncryptingBundleFiles(buildParameters, buildMapContext);
}
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskPrepare_RFBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskPrepare_RFBP.cs
index f9e434c6..25282eee 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskPrepare_RFBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/RawFileBuildPipeline/BuildTasks/TaskPrepare_RFBP.cs
@@ -16,15 +16,8 @@ namespace YooAsset.Editor
// 检测基础构建参数
buildParametersContext.CheckBuildParameters();
- // 检测不被支持的构建模式
- if (buildParameters.BuildMode == EBuildMode.IncrementalBuild)
- {
- string message = BuildLogger.GetErrorMessage(ErrorCode.BuildPipelineNotSupportBuildMode, $"{nameof(EBuildPipeline.RawFileBuildPipeline)} not support {nameof(EBuildMode.IncrementalBuild)} build mode !");
- throw new Exception(message);
- }
-
- // 强制构建删除包裹目录
- if (buildParameters.BuildMode == EBuildMode.ForceRebuild)
+ // 删除包裹目录
+ if (buildParameters.ClearBuildCacheFiles)
{
string packageRootDirectory = buildParameters.GetPackageRootDirectory();
if (EditorTools.DeleteDirectory(packageRootDirectory))
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskCopyBuildinFiles_SBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskCopyBuildinFiles_SBP.cs
index c8300642..aa95380f 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskCopyBuildinFiles_SBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskCopyBuildinFiles_SBP.cs
@@ -12,14 +12,9 @@ namespace YooAsset.Editor
{
var buildParametersContext = context.GetContextObject();
var manifestContext = context.GetContextObject();
- var buildMode = buildParametersContext.Parameters.BuildMode;
-
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
+ if (buildParametersContext.Parameters.BuildinFileCopyOption != EBuildinFileCopyOption.None)
{
- if (buildParametersContext.Parameters.BuildinFileCopyOption != EBuildinFileCopyOption.None)
- {
- CopyBuildinFilesToStreaming(buildParametersContext, manifestContext.Manifest);
- }
+ CopyBuildinFilesToStreaming(buildParametersContext, manifestContext.Manifest);
}
}
}
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskEncryption_SBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskEncryption_SBP.cs
index 27ef5117..d520c883 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskEncryption_SBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskEncryption_SBP.cs
@@ -7,12 +7,7 @@ namespace YooAsset.Editor
{
var buildParameters = context.GetContextObject();
var buildMapContext = context.GetContextObject();
-
- var buildMode = buildParameters.Parameters.BuildMode;
- if (buildMode == EBuildMode.ForceRebuild || buildMode == EBuildMode.IncrementalBuild)
- {
- EncryptingBundleFiles(buildParameters, buildMapContext);
- }
+ EncryptingBundleFiles(buildParameters, buildMapContext);
}
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskPrepare_SBP.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskPrepare_SBP.cs
index b83fb77a..438c758d 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskPrepare_SBP.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildPipeline/ScriptableBuildPipeline/BuildTasks/TaskPrepare_SBP.cs
@@ -23,11 +23,17 @@ namespace YooAsset.Editor
throw new Exception(message);
}
- // 检测不被支持的构建模式
- if (buildParameters.BuildMode == EBuildMode.ForceRebuild)
+ // 删除包裹目录
+ if (buildParameters.ClearBuildCacheFiles)
{
- string message = BuildLogger.GetErrorMessage(ErrorCode.BuildPipelineNotSupportBuildMode, $"{nameof(EBuildPipeline.ScriptableBuildPipeline)} not support {nameof(EBuildMode.ForceRebuild)} build mode !");
- throw new Exception(message);
+ // Deletes the build cache directory.
+ UnityEditor.Build.Pipeline.Utilities.BuildCache.PurgeCache(false);
+
+ string packageRootDirectory = buildParameters.GetPackageRootDirectory();
+ if (EditorTools.DeleteDirectory(packageRootDirectory))
+ {
+ BuildLogger.Log($"Delete package root directory: {packageRootDirectory}");
+ }
}
// 检测包裹输出目录是否存在
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildSystem/ErrorCode.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildSystem/ErrorCode.cs
index fc74d595..66233486 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/BuildSystem/ErrorCode.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/BuildSystem/ErrorCode.cs
@@ -13,7 +13,6 @@ namespace YooAsset.Editor
BuildinFileRootIsNullOrEmpty = 114,
PackageOutputDirectoryExists = 115,
RecommendScriptBuildPipeline = 130,
- BuildPipelineNotSupportBuildMode = 140,
// TaskGetBuildMap
RemoveInvalidTags = 200,
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs
deleted file mode 100644
index 0fcfaa7d..00000000
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-namespace YooAsset.Editor
-{
- ///
- /// 资源包流水线的构建模式
- ///
- public enum EBuildMode
- {
- ///
- /// 强制重建模式
- ///
- ForceRebuild,
-
- ///
- /// 增量构建模式
- ///
- IncrementalBuild,
- }
-}
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs.meta b/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs.meta
deleted file mode 100644
index 36454fcc..00000000
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 0b6f2523a865e454d8fa3f48a2852d5a
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.cs
index c9798f0c..183d149f 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.cs
@@ -27,6 +27,7 @@ namespace YooAsset.Editor
private EnumField _outputNameStyleField;
private EnumField _copyBuildinFileOptionField;
private TextField _copyBuildinFileTagsField;
+ private Toggle _clearBuildCacheToggle;
public BuildPipelineViewerBase(string packageName, EBuildPipeline buildPipeline, BuildTarget buildTarget, VisualElement parent)
{
@@ -59,24 +60,6 @@ namespace YooAsset.Editor
_buildVersionField.style.width = StyleWidth;
_buildVersionField.SetValueWithoutNotify(GetDefaultPackageVersion());
- // 构建模式
- {
- var buildModeContainer = Root.Q("BuildModeContainer");
- var buildMode = AssetBundleBuilderSetting.GetPackageBuildMode(PackageName, BuildPipeline);
- var buildModeList = GetSupportBuildModes();
- int defaultIndex = buildModeList.FindIndex(x => x.Equals(buildMode));
- if (defaultIndex < 0)
- defaultIndex = (int)(EBuildMode)buildModeList[0];
- _buildModeField = new PopupField(buildModeList, defaultIndex);
- _buildModeField.label = "Build Mode";
- _buildModeField.style.width = StyleWidth;
- _buildModeField.RegisterValueChangedCallback(evt =>
- {
- AssetBundleBuilderSetting.SetPackageBuildMode(PackageName, BuildPipeline, (EBuildMode)_buildModeField.value);
- });
- buildModeContainer.Add(_buildModeField);
- }
-
// 加密方法
{
var encryptionContainer = Root.Q("EncryptionContainer");
@@ -148,6 +131,15 @@ namespace YooAsset.Editor
AssetBundleBuilderSetting.SetPackageBuildinFileCopyParams(PackageName, BuildPipeline, _copyBuildinFileTagsField.value);
});
+ // 清理构建缓存
+ bool clearBuildCache = AssetBundleBuilderSetting.GetPackageClearBuildCache(PackageName, BuildPipeline);
+ _clearBuildCacheToggle = Root.Q("ClearBuildCache");
+ _clearBuildCacheToggle.SetValueWithoutNotify(clearBuildCache);
+ _clearBuildCacheToggle.RegisterValueChangedCallback(evt =>
+ {
+ AssetBundleBuilderSetting.SetPackageClearBuildCache(PackageName, BuildPipeline, _clearBuildCacheToggle.value);
+ });
+
// 构建按钮
var buildButton = Root.Q
protected abstract void ExecuteBuild();
- ///
- /// 获取构建管线支持的构建模式集合
- ///
- protected abstract List GetSupportBuildModes();
-
///
/// 获取构建版本
///
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.uxml b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.uxml
index bc91cc66..493f340d 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.uxml
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuildPipelineViewerBase.uxml
@@ -2,7 +2,7 @@
-
+
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuiltinBuildPipelineViewer.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuiltinBuildPipelineViewer.cs
index 4dc3654b..719da138 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuiltinBuildPipelineViewer.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/BuiltinBuildPipelineViewer.cs
@@ -22,18 +22,17 @@ namespace YooAsset.Editor
///
protected override void ExecuteBuild()
{
- var buildMode = AssetBundleBuilderSetting.GetPackageBuildMode(PackageName, BuildPipeline);
var fileNameStyle = AssetBundleBuilderSetting.GetPackageFileNameStyle(PackageName, BuildPipeline);
var buildinFileCopyOption = AssetBundleBuilderSetting.GetPackageBuildinFileCopyOption(PackageName, BuildPipeline);
var buildinFileCopyParams = AssetBundleBuilderSetting.GetPackageBuildinFileCopyParams(PackageName, BuildPipeline);
var compressOption = AssetBundleBuilderSetting.GetPackageCompressOption(PackageName, BuildPipeline);
+ var clearBuildCache = AssetBundleBuilderSetting.GetPackageClearBuildCache(PackageName, BuildPipeline);
BuiltinBuildParameters buildParameters = new BuiltinBuildParameters();
buildParameters.BuildOutputRoot = AssetBundleBuilderHelper.GetDefaultBuildOutputRoot();
buildParameters.BuildinFileRoot = AssetBundleBuilderHelper.GetStreamingAssetsRoot();
buildParameters.BuildPipeline = BuildPipeline.ToString();
buildParameters.BuildTarget = BuildTarget;
- buildParameters.BuildMode = buildMode;
buildParameters.PackageName = PackageName;
buildParameters.PackageVersion = GetPackageVersion();
buildParameters.EnableSharePackRule = true;
@@ -41,22 +40,15 @@ namespace YooAsset.Editor
buildParameters.FileNameStyle = fileNameStyle;
buildParameters.BuildinFileCopyOption = buildinFileCopyOption;
buildParameters.BuildinFileCopyParams = buildinFileCopyParams;
- buildParameters.EncryptionServices = CreateEncryptionInstance();
buildParameters.CompressOption = compressOption;
+ buildParameters.ClearBuildCacheFiles = clearBuildCache;
+ buildParameters.EncryptionServices = CreateEncryptionInstance();
BuiltinBuildPipeline pipeline = new BuiltinBuildPipeline();
var buildResult = pipeline.Run(buildParameters, true);
if (buildResult.Success)
EditorUtility.RevealInFinder(buildResult.OutputPackageDirectory);
}
-
- protected override List GetSupportBuildModes()
- {
- List buildModeList = new List();
- buildModeList.Add(EBuildMode.ForceRebuild);
- buildModeList.Add(EBuildMode.IncrementalBuild);
- return buildModeList;
- }
}
}
#endif
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/EditorSimulateBuildpipelineViewer.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/EditorSimulateBuildpipelineViewer.cs
index 0bda5b69..ad1db9bc 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/EditorSimulateBuildpipelineViewer.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/EditorSimulateBuildpipelineViewer.cs
@@ -36,7 +36,6 @@ namespace YooAsset.Editor
///
protected override void ExecuteBuild()
{
- var buildMode = AssetBundleBuilderSetting.GetPackageBuildMode(PackageName, BuildPipeline);
var fileNameStyle = AssetBundleBuilderSetting.GetPackageFileNameStyle(PackageName, BuildPipeline);
var buildinFileCopyOption = AssetBundleBuilderSetting.GetPackageBuildinFileCopyOption(PackageName, BuildPipeline);
var buildinFileCopyParams = AssetBundleBuilderSetting.GetPackageBuildinFileCopyParams(PackageName, BuildPipeline);
@@ -46,7 +45,6 @@ namespace YooAsset.Editor
buildParameters.BuildinFileRoot = AssetBundleBuilderHelper.GetStreamingAssetsRoot();
buildParameters.BuildPipeline = BuildPipeline.ToString();
buildParameters.BuildTarget = BuildTarget;
- buildParameters.BuildMode = buildMode;
buildParameters.PackageName = PackageName;
buildParameters.PackageVersion = GetPackageVersion();
buildParameters.VerifyBuildingResult = true;
@@ -60,13 +58,6 @@ namespace YooAsset.Editor
if (buildResult.Success)
EditorUtility.RevealInFinder(buildResult.OutputPackageDirectory);
}
-
- protected override List GetSupportBuildModes()
- {
- List buildModeList = new List();
- buildModeList.Add(EBuildMode.ForceRebuild);
- return buildModeList;
- }
}
}
#endif
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/RawfileBuildpipelineViewer.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/RawfileBuildpipelineViewer.cs
index f042a502..bfd90ace 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/RawfileBuildpipelineViewer.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/RawfileBuildpipelineViewer.cs
@@ -24,23 +24,23 @@ namespace YooAsset.Editor
///
protected override void ExecuteBuild()
{
- var buildMode = AssetBundleBuilderSetting.GetPackageBuildMode(PackageName, BuildPipeline);
var fileNameStyle = AssetBundleBuilderSetting.GetPackageFileNameStyle(PackageName, BuildPipeline);
var buildinFileCopyOption = AssetBundleBuilderSetting.GetPackageBuildinFileCopyOption(PackageName, BuildPipeline);
var buildinFileCopyParams = AssetBundleBuilderSetting.GetPackageBuildinFileCopyParams(PackageName, BuildPipeline);
+ var clearBuildCache = AssetBundleBuilderSetting.GetPackageClearBuildCache(PackageName, BuildPipeline);
RawFileBuildParameters buildParameters = new RawFileBuildParameters();
buildParameters.BuildOutputRoot = AssetBundleBuilderHelper.GetDefaultBuildOutputRoot();
buildParameters.BuildinFileRoot = AssetBundleBuilderHelper.GetStreamingAssetsRoot();
buildParameters.BuildPipeline = BuildPipeline.ToString();
buildParameters.BuildTarget = BuildTarget;
- buildParameters.BuildMode = buildMode;
buildParameters.PackageName = PackageName;
buildParameters.PackageVersion = GetPackageVersion();
buildParameters.VerifyBuildingResult = true;
buildParameters.FileNameStyle = fileNameStyle;
buildParameters.BuildinFileCopyOption = buildinFileCopyOption;
buildParameters.BuildinFileCopyParams = buildinFileCopyParams;
+ buildParameters.ClearBuildCacheFiles = clearBuildCache;
buildParameters.EncryptionServices = CreateEncryptionInstance();
RawFileBuildPipeline pipeline = new RawFileBuildPipeline();
@@ -48,13 +48,6 @@ namespace YooAsset.Editor
if (buildResult.Success)
EditorUtility.RevealInFinder(buildResult.OutputPackageDirectory);
}
-
- protected override List GetSupportBuildModes()
- {
- List buildModeList = new List();
- buildModeList.Add(EBuildMode.ForceRebuild);
- return buildModeList;
- }
}
}
#endif
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/ScriptableBuildPipelineViewer.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/ScriptableBuildPipelineViewer.cs
index 4ff5ac48..98ebdc6f 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/ScriptableBuildPipelineViewer.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/VisualViewers/ScriptableBuildPipelineViewer.cs
@@ -22,18 +22,17 @@ namespace YooAsset.Editor
///
protected override void ExecuteBuild()
{
- var buildMode = AssetBundleBuilderSetting.GetPackageBuildMode(PackageName, BuildPipeline);
var fileNameStyle = AssetBundleBuilderSetting.GetPackageFileNameStyle(PackageName, BuildPipeline);
var buildinFileCopyOption = AssetBundleBuilderSetting.GetPackageBuildinFileCopyOption(PackageName, BuildPipeline);
var buildinFileCopyParams = AssetBundleBuilderSetting.GetPackageBuildinFileCopyParams(PackageName, BuildPipeline);
var compressOption = AssetBundleBuilderSetting.GetPackageCompressOption(PackageName, BuildPipeline);
+ var clearBuildCache = AssetBundleBuilderSetting.GetPackageClearBuildCache(PackageName, BuildPipeline);
ScriptableBuildParameters buildParameters = new ScriptableBuildParameters();
buildParameters.BuildOutputRoot = AssetBundleBuilderHelper.GetDefaultBuildOutputRoot();
buildParameters.BuildinFileRoot = AssetBundleBuilderHelper.GetStreamingAssetsRoot();
buildParameters.BuildPipeline = BuildPipeline.ToString();
buildParameters.BuildTarget = BuildTarget;
- buildParameters.BuildMode = buildMode;
buildParameters.PackageName = PackageName;
buildParameters.PackageVersion = GetPackageVersion();
buildParameters.EnableSharePackRule = true;
@@ -41,21 +40,15 @@ namespace YooAsset.Editor
buildParameters.FileNameStyle = fileNameStyle;
buildParameters.BuildinFileCopyOption = buildinFileCopyOption;
buildParameters.BuildinFileCopyParams = buildinFileCopyParams;
- buildParameters.EncryptionServices = CreateEncryptionInstance();
buildParameters.CompressOption = compressOption;
+ buildParameters.ClearBuildCacheFiles = clearBuildCache;
+ buildParameters.EncryptionServices = CreateEncryptionInstance();
ScriptableBuildPipeline pipeline = new ScriptableBuildPipeline();
var buildResult = pipeline.Run(buildParameters, true);
if (buildResult.Success)
EditorUtility.RevealInFinder(buildResult.OutputPackageDirectory);
}
-
- protected override List GetSupportBuildModes()
- {
- List buildModeList = new List();
- buildModeList.Add(EBuildMode.IncrementalBuild);
- return buildModeList;
- }
}
}
#endif
\ No newline at end of file
diff --git a/Assets/YooAsset/Editor/AssetBundleReporter/ReportSummary.cs b/Assets/YooAsset/Editor/AssetBundleReporter/ReportSummary.cs
index e41435d8..1508c1d3 100644
--- a/Assets/YooAsset/Editor/AssetBundleReporter/ReportSummary.cs
+++ b/Assets/YooAsset/Editor/AssetBundleReporter/ReportSummary.cs
@@ -33,11 +33,6 @@ namespace YooAsset.Editor
///
public BuildTarget BuildTarget;
- ///
- /// 构建模式
- ///
- public EBuildMode BuildMode;
-
///
/// 构建管线
///
@@ -67,6 +62,7 @@ namespace YooAsset.Editor
public string IgnoreRuleName;
// 构建参数
+ public bool ClearBuildCacheFiles;
public bool EnableSharePackRule;
public string EncryptionClassName;
public EFileNameStyle FileNameStyle;
diff --git a/Assets/YooAsset/Editor/AssetBundleReporter/VisualViewers/ReporterSummaryViewer.cs b/Assets/YooAsset/Editor/AssetBundleReporter/VisualViewers/ReporterSummaryViewer.cs
index 82f71b97..038aeda7 100644
--- a/Assets/YooAsset/Editor/AssetBundleReporter/VisualViewers/ReporterSummaryViewer.cs
+++ b/Assets/YooAsset/Editor/AssetBundleReporter/VisualViewers/ReporterSummaryViewer.cs
@@ -62,7 +62,6 @@ namespace YooAsset.Editor
_items.Add(new ItemWrapper("Build Seconds", ConvertTime(buildReport.Summary.BuildSeconds)));
_items.Add(new ItemWrapper("Build Target", $"{buildReport.Summary.BuildTarget}"));
_items.Add(new ItemWrapper("Build Pipeline", $"{buildReport.Summary.BuildPipeline}"));
- _items.Add(new ItemWrapper("Build Mode", $"{buildReport.Summary.BuildMode}"));
_items.Add(new ItemWrapper("Package Name", buildReport.Summary.BuildPackageName));
_items.Add(new ItemWrapper("Package Version", buildReport.Summary.BuildPackageVersion));
_items.Add(new ItemWrapper("Package Note", buildReport.Summary.BuildPackageNote));
@@ -78,6 +77,7 @@ namespace YooAsset.Editor
_items.Add(new ItemWrapper(string.Empty, string.Empty));
_items.Add(new ItemWrapper("Build Params", string.Empty));
+ _items.Add(new ItemWrapper("Clear Build Cache Files", $"{buildReport.Summary.ClearBuildCacheFiles}"));
_items.Add(new ItemWrapper("Enable Share Pack Rule", $"{buildReport.Summary.EnableSharePackRule}"));
_items.Add(new ItemWrapper("Encryption Class Name", buildReport.Summary.EncryptionClassName));
_items.Add(new ItemWrapper("FileNameStyle", $"{buildReport.Summary.FileNameStyle}"));