public static void Build() { // Create a 'Builds' folder in the root project folder to export the build to. if (!Directory.Exists("Builds")) { Directory.CreateDirectory("Builds"); } // Call PreprocessBuild before starting the build to remove all nested prefab data from the project. PrefabDatabaseUtility.PreprocessBuild(); { // Create a build. BuildPipeline.BuildPlayer( new string[] { "Assets/test.unity" }, "builds/build.exe", BuildTarget.StandaloneWindows, BuildOptions.None); // Switch to Android and create another build BuildPipeline.BuildPlayer( new string[] { "Assets/test.unity" }, "builds/build.apk", BuildTarget.Android, BuildOptions.None); } // Call PostprocessBuild after building to restore all nested prefab data. PrefabDatabaseUtility.PostprocessBuild(); }
/// <summary> /// Called by Unity before a build is started. /// Prepares the project for building by (temporarily) removing all nested prefab data. /// </summary> public void OnPreprocessBuild(BuildTarget target, string path) { PrefabDatabaseUtility.PreprocessBuild(); }
/// <summary> /// Preprocesses the project for a build on Unity Cloud Build. /// Will remove all nested prefab data from the project, without creating any backup or restore point. /// Set this method as Pre-Export Method in the Advanced Options of your Cloud Build config: NestedPrefabsCloudBuildProcessor.PreExportMethod /// </summary> public static void PreExportMethod() { PrefabDatabaseUtility.PreprocessCloudBuild(); }