From 58fc76b8d2a4cc4861eada254ce562fd75368dd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E5=86=A0=E5=B3=B0?= Date: Mon, 16 Dec 2024 17:45:07 +0800 Subject: [PATCH] fix #403 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除了EBuildMode枚举类型 --- .../AssetBundleBuilderSetting.cs | 24 ++++++------- .../AssetBundleSimulateBuilder.cs | 1 - .../AssetBundleBuilder/BuildParameters.cs | 12 +++---- .../BaseTasks/TaskCreateReport.cs | 2 +- .../BaseTasks/TaskGetBuildMap.cs | 1 - .../BuildTasks/TaskCopyBuildinFiles_BBP.cs | 9 ++--- .../BuildTasks/TaskEncryption_BBP.cs | 7 +--- .../BuildTasks/TaskPrepare_BBP.cs | 4 +-- .../BuiltinBuildParameters.cs | 2 +- .../BuildTasks/TaskBuilding_RFBP.cs | 8 +---- .../BuildTasks/TaskEncryption_RFBP.cs | 7 +--- .../BuildTasks/TaskPrepare_RFBP.cs | 11 ++---- .../BuildTasks/TaskCopyBuildinFiles_SBP.cs | 9 ++--- .../BuildTasks/TaskEncryption_SBP.cs | 7 +--- .../BuildTasks/TaskPrepare_SBP.cs | 14 +++++--- .../BuildSystem/ErrorCode.cs | 1 - .../Editor/AssetBundleBuilder/EBuildMode.cs | 19 ---------- .../AssetBundleBuilder/EBuildMode.cs.meta | 11 ------ .../VisualViewers/BuildPipelineViewerBase.cs | 36 ++++++------------- .../BuildPipelineViewerBase.uxml | 2 +- .../BuiltinBuildPipelineViewer.cs | 14 ++------ .../EditorSimulateBuildpipelineViewer.cs | 9 ----- .../RawfileBuildpipelineViewer.cs | 11 ++---- .../ScriptableBuildPipelineViewer.cs | 13 ++----- .../AssetBundleReporter/ReportSummary.cs | 6 +--- .../VisualViewers/ReporterSummaryViewer.cs | 2 +- 26 files changed, 64 insertions(+), 178 deletions(-) delete mode 100644 Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs delete mode 100644 Assets/YooAsset/Editor/AssetBundleBuilder/EBuildMode.cs.meta 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}"));