diff --git a/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/Editor/UnityPlayerBuildTools.cs b/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/Editor/UnityPlayerBuildTools.cs index e4e3101..1509d27 100644 --- a/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/Editor/UnityPlayerBuildTools.cs +++ b/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/Editor/UnityPlayerBuildTools.cs @@ -11,6 +11,7 @@ using UnityEditor.Build; using UnityEditor.Build.Reporting; using UnityEngine; +using UnityEngine.SceneManagement; using Utilities.Editor.BuildPipeline.Logging; using Debug = UnityEngine.Debug; @@ -226,7 +227,36 @@ public static BuildReport BuildUnityPlayer() Debug.Log($"Build Target: {buildInfo.BuildTarget}"); Debug.Log($"Build Options: {buildInfo.BuildOptions}"); Debug.Log($"Target output: \"{buildInfo.FullOutputPath}\""); - Debug.Log($"Scenes in build:\n{string.Join("\n ", buildInfo.Scenes.Select(scene => scene.path))}"); + var scenes = buildInfo.Scenes.Select(scene => scene.path).ToArray(); + + // get the lightmapping settings for each scene in the build and disable auto lightmap generation + foreach (var editorSettingsBuildScene in buildInfo.Scenes) + { + var scene = SceneManager.GetSceneByPath(editorSettingsBuildScene.path); + var op = SceneManager.LoadSceneAsync(scene.path); + + while (!op?.isDone ?? false) + { + Task.Yield(); + } + + var sceneLightmapSettings = Lightmapping.GetLightingSettingsForScene(scene); + + if (sceneLightmapSettings != null) + { + sceneLightmapSettings.autoGenerate = false; + EditorUtility.SetDirty(sceneLightmapSettings); + AssetDatabase.SaveAssetIfDirty(sceneLightmapSettings); + } + + op = SceneManager.UnloadSceneAsync(scene); + + while (!op?.isDone ?? false) + { + Task.Yield(); + } + } + Debug.Log($"Scenes in build:\n{string.Join("\n ", scenes)}"); } try diff --git a/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/package.json b/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/package.json index 754da71..166d702 100644 --- a/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/package.json +++ b/Utilities.BuildPipeline/Packages/com.utilities.buildpipeline/package.json @@ -3,7 +3,7 @@ "displayName": "Utilities.BuildPipeline", "description": "The Build Pipeline Utilities aims to give developers more tools and options when making builds with the command line or with continuous integration.", "keywords": [], - "version": "1.5.6", + "version": "1.5.7", "unity": "2019.4", "documentationUrl": "https://github.com/RageAgainstThePixel/com.utilities.buildpipeine#documentation", "changelogUrl": "https://github.com/RageAgainstThePixel/com.utilities.buildpipeine/releases",