private static void BakeLightmap() { LightmapEditorSettings.maxAtlasHeight = 512; LightmapEditorSettings.maxAtlasSize = 512; Lightmapping.Clear(); Lightmapping.Bake(); }
static void Init256() { LightmapEditorSettings.maxAtlasHeight = 256; LightmapEditorSettings.maxAtlasWidth = 256; Lightmapping.Clear(); Lightmapping.Bake(); }
public static void ClearLightmappingData() { Debug.Log("Clear Lighting Data Asset ..."); Lightmapping.ClearLightingDataAsset(); Lightmapping.Clear(); Debug.Log("Clear Lighting Data Asset Successfully!"); }
public IEnumerator TiledBaking_GPU_1k_lightmap_4_tiles_1_Empty_Tile() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/ThreePlanes.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.tiledBaking = LightingSettings.TiledBaking.Quarter; Lightmapping.Clear(); Lightmapping.Bake(); LightmapConvergence lc = Lightmapping.GetLightmapConvergence(0); Assert.That(lc.GetTileCount(), Is.EqualTo(4), "Max tiling pass num should be 4"); while (Lightmapping.isRunning) { yield return(null); } Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }
public IEnumerator BakingWithATrousFiltering_DoesNotFallback() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/BakeATrous.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.lightmapper = LightingSettings.Lightmapper.ProgressiveGPU; lightingSettings.mixedBakeMode = MixedLightingMode.IndirectOnly; lightingSettings.directionalityMode = LightmapsMode.NonDirectional; // Activate A-Trous filtering lightingSettings.filterTypeIndirect = LightingSettings.FilterType.ATrous; Lightmapping.Clear(); Lightmapping.Bake(); // Check that we did not fallback to CPULM Assert.AreEqual(lightingSettings.lightmapper, LightingSettings.Lightmapper.ProgressiveGPU); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }
public static void testBuildLightMap() { LightmapEditorSettings.maxAtlasHeight = 512; LightmapEditorSettings.maxAtlasWidth = 512; Lightmapping.Clear(); Lightmapping.Bake(); }
public IEnumerator TiledBaking_GPU_1k_lightmap_4_tiles() { EditorSceneManager.OpenScene(scenePath, OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.tiledBaking = LightingSettings.TiledBaking.Quarter; lightingSettings.lightmapResolution = 100; lightingSettings.lightmapMaxSize = 1024; Lightmapping.Clear(); Lightmapping.Bake(); LightmapConvergence lc = Lightmapping.GetLightmapConvergence(0); Assert.That(lc.GetTileCount(), Is.EqualTo(4), "Max tiling pass num should be 4"); while (Lightmapping.isRunning) { yield return(null); } Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }
static void Init512() { LightmapEditorSettings.maxAtlasHeight = 512; LightmapEditorSettings.maxAtlasWidth = 512; Lightmapping.Clear(); Lightmapping.Bake(); }
static void Init1024() { LightmapEditorSettings.maxAtlasHeight = 1024; LightmapEditorSettings.maxAtlasWidth = 1024; Lightmapping.Clear(); Lightmapping.Bake(); }
void DrawBakeButton() { GUILayout.FlexibleSpace(); EditorGUILayout.BeginHorizontal(); EditorGUI.BeginDisabledGroup(Lightmapping.isRunning); if (GUILayout.Button("Load All Scenes In Set", GUILayout.ExpandWidth(true))) { LoadScenesInBakingSet(GetCurrentBakingSet()); } if (GUILayout.Button("Clear Loaded Scenes Data")) { Lightmapping.Clear(); } EditorGUI.EndDisabledGroup(); if (Lightmapping.isRunning) { if (GUILayout.Button("Cancel", GUILayout.ExpandWidth(true))) { Lightmapping.Cancel(); } } else { if (ButtonWithDropdownList(k_GenerateLighting, k_BakeOptionsText, BakeButtonCallback)) { BakeButtonCallback(0); } } EditorGUILayout.EndHorizontal(); }
void Bake() { LightmapEditorSettings.maxAtlasHeight = maxAtlasHeight; LightmapEditorSettings.maxAtlasWidth = maxAtlasWidth; Lightmapping.Clear(); Lightmapping.Bake(); }
public static void ClearBakedData() { if (EditorUtility.DisplayDialog("Clear Baked Data", "Really clear baked lightmaps?", "Yes", "Cancel")) { Lightmapping.Clear(); GenerateLightmapUVs(); } }
public void Setup() { #if UNITY_EDITOR // Search for "InitTestSceneXXXXXXXX" generated by test runner and save the path in the EditorPrefs for (int i = 0; i < EditorSceneManagement.EditorSceneManager.sceneCount; ++i) { Scene scene = EditorSceneManagement.EditorSceneManager.GetSceneAt(i); if (scene.name.StartsWith("InitTestScene")) { EditorPrefs.SetString("InitTestScene", scene.path); break; } } string scenesWithAutoLightMap = ""; // For each scene in the build settings, force build of the lightmaps if it has "DoLightmap" label. foreach (EditorBuildSettingsScene scene in EditorBuildSettings.scenes) { SceneAsset sceneAsset = AssetDatabase.LoadAssetAtPath <SceneAsset>(scene.path); var labels = new System.Collections.Generic.List <string>(AssetDatabase.GetLabels(sceneAsset)); if (labels.Contains("DoLightmap")) { EditorSceneManagement.EditorSceneManager.OpenScene(scene.path, EditorSceneManagement.OpenSceneMode.Single); Lightmapping.giWorkflowMode = Lightmapping.GIWorkflowMode.OnDemand; EditorSceneManagement.EditorSceneManager.SaveOpenScenes(); Lightmapping.Clear(); Lightmapping.Bake(); scenesWithAutoLightMap += scene.path + ";"; EditorSceneManagement.EditorSceneManager.SaveOpenScenes(); Lightmapping.giWorkflowMode = Lightmapping.GIWorkflowMode.Iterative; EditorSceneManagement.EditorSceneManager.SaveOpenScenes(); EditorSceneManagement.EditorSceneManager.NewScene(EditorSceneManagement.NewSceneSetup.EmptyScene); } } EditorPrefs.SetString("ScenesWithAutoLightMap", scenesWithAutoLightMap); // Re-open testrunner scene string initTestSceneString = EditorPrefs.GetString("InitTestScene"); if (!string.IsNullOrEmpty(initTestSceneString)) { EditorSceneManagement.EditorSceneManager.OpenScene(initTestSceneString, EditorSceneManagement.OpenSceneMode.Single); } #endif }
void ProcessMaps() { var currentScene = EditorSceneManager.GetActiveScene().path; var buildScenes = new List <EditorBuildSettingsScene>(EditorBuildSettings.scenes); buildScenes.Clear(); try { foreach (var item in AssetDatabase.FindAssets("t:" + typeof(SceneAsset).Name)) { EditorUtility.DisplayProgressBar("Loading scenes", string.Empty, 5); var asset = AssetDatabase.GUIDToAssetPath(item); if (string.IsNullOrEmpty(asset)) { continue; } buildScenes.Add(new EditorBuildSettingsScene(asset, true)); } } finally { EditorUtility.ClearProgressBar(); } try { EditorBuildSettings.scenes = buildScenes.ToArray(); for (int i = 0; i < buildScenes.Count; i++) { EditorUtility.DisplayProgressBar("Processing scene", buildScenes[i].path, Mathf.Clamp01((float)i / buildScenes.Count)); var scene = EditorSceneManager.OpenScene(buildScenes[i].path, OpenSceneMode.Single); EditorSceneManager.SetActiveScene(scene); foreach (var actor in FindObjectsOfType <Actor>()) { actor.transform.position = actor.Location; EditorUtility.SetDirty(actor); } RenderSettings.skybox = null; RenderSettings.ambientMode = UnityEngine.Rendering.AmbientMode.Flat; RenderSettings.defaultReflectionMode = UnityEngine.Rendering.DefaultReflectionMode.Custom; Lightmapping.bakedGI = false; Lightmapping.realtimeGI = false; Lightmapping.Clear(); EditorSceneManager.MarkSceneDirty(scene); EditorSceneManager.SaveScene(scene); } } finally { EditorUtility.ClearProgressBar(); } EditorSceneManager.OpenScene(currentScene, OpenSceneMode.Single); }
void bakeAllScenes() { scenesToBake = ReadNames(); //m_baking = true; for (int i = 1; i < scenesToBake.Length; i++) { EditorApplication.OpenScene(scenesToBake[i]); setUpScene(); Lightmapping.Clear(); Lightmapping.Bake(); EditorApplication.SaveScene(scenesToBake[i]); } }
public IEnumerator ActivateDirectLighting_DuringABake_DoesNotFallback() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/BakeRestartScene.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.lightmapper = LightingSettings.Lightmapper.ProgressiveGPU; lightingSettings.mixedBakeMode = MixedLightingMode.IndirectOnly; lightingSettings.directionalityMode = LightmapsMode.NonDirectional; GameObject dirLightGO = GameObject.FindGameObjectsWithTag("TheLight")[0]; dirLightGO.SetActive(false); Light light = dirLightGO.GetComponent(typeof(Light)) as Light; light.lightmapBakeType = LightmapBakeType.Baked; Lightmapping.Clear(); Lightmapping.BakeAsync(); foreach (bool b in RunABake(0.2f)) { yield return(null); } // Make sure it is still baking before we // switch the light on and restart the bake Assert.IsTrue(Lightmapping.isBaking); // Activate the light, cause the bake to restart dirLightGO.SetActive(true); foreach (bool b in RunABake(0.2f)) { yield return(null); } // Check that baking is still running Assert.IsTrue(Lightmapping.isBaking); // Check that we did not fallback to CPULM Assert.AreEqual(lightingSettings.lightmapper, LightingSettings.Lightmapper.ProgressiveGPU); Lightmapping.Cancel(); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }
static void LightmapSaverEditorSimplePasses() { LightmapSaver[] dataHolders = GameObject.FindObjectsOfType<LightmapSaver>(); for(int i = 0; i < dataHolders.Length; i++) { var holder = dataHolders[i]; GameObject root = holder.gameObject; LightmapSaver pSaver = root.GetComponentInParent<LightmapSaver>(); if(null != pSaver && pSaver.gameObject != root) { EditorUtility.DisplayDialog("错误", string.Format("游戏物体{0}的父节点{1}包含有 LightmapSaver 组件,这是不允许的。", root.gameObject.name, pSaver.gameObject.name),"确定"); return; } var cSaver = root.GetComponentInChildren<LightmapSaver>(); if(null != cSaver && cSaver.gameObject != root) { EditorUtility.DisplayDialog("错误", string.Format("游戏物体{0}的子节点{1}包含有 LightmapSaver 组件,这是不允许的。", root.gameObject.name, cSaver.gameObject.name), "确定"); return; } Lightmapping.Clear(); Lightmapping.Bake();//开始烘焙 var renderers = root.GetComponentsInChildren<Renderer>(true); holder.RendererData = new LightmapSaver.LightmapRendererData[renderers.Length]; for (int j = 0; j < renderers.Length; j++) { var renderer = renderers[j]; holder.RendererData[j] = new LightmapSaver.LightmapRendererData(); Debug.Log(renderer.gameObject.name); if (renderer.lightmapIndex == -1) continue; var rendererData = holder.RendererData[j]; rendererData.renderer = renderer; rendererData.lightmapIndex = renderer.lightmapIndex; rendererData.lightmapScaleOffset = renderer.lightmapScaleOffset; } if(LightmapSettings.lightmaps.Length > 0) { holder.lightmapColor = LightmapSettings.lightmaps[0].lightmapColor; holder.lightmapDir = LightmapSettings.lightmaps[0].lightmapDir; } else { EditorUtility.DisplayDialog("烘焙失败", "没有成功生成光照贴图。", "确定"); return; } } EditorUtility.DisplayDialog("烘焙成功", "烘焙已经完成。", "确定"); }
void OpenBakeAndSave() { fileName = "Assets/Scenes/Levels/" + levelNames[levelIndex] + ".unity"; EditorSceneManager.OpenScene(fileName); Lightmapping.Clear(); // LightmapEditorSettings.maxAtlasHeight = 4096; // LightmapEditorSettings.maxAtlasWidth = 4096; Lightmapping.BakeAsync(); startedBaking = true; }
// [MenuItem("Tool/BakeLightMap", priority = 1001)] public static void BakeLightMap(Lightmapping.OnCompletedFunction complete) { string tempPath = MapScenePath + "/Map"; if (Directory.Exists(tempPath)) { Directory.Delete(tempPath, true); AssetDatabase.Refresh(); } //Debug.Log("giWorkflowMode :" + Lightmapping.giWorkflowMode); Lightmapping.giWorkflowMode = Lightmapping.GIWorkflowMode.OnDemand; Lightmapping.completed = complete; Lightmapping.Clear(); Lightmapping.Bake(); }
void DrawBakeButton() { GUILayout.FlexibleSpace(); EditorGUILayout.BeginHorizontal(); EditorGUI.BeginDisabledGroup(Lightmapping.isRunning); if (GUILayout.Button("Load All Scenes In Set", GUILayout.ExpandWidth(true))) { LoadScenesInBakingSet(GetCurrentBakingSet()); } if (GUILayout.Button("Clear Loaded Scenes Data")) { Lightmapping.Clear(); } EditorGUI.EndDisabledGroup(); if (Lightmapping.isRunning) { if (GUILayout.Button("Cancel", GUILayout.ExpandWidth(true))) { Lightmapping.Cancel(); } } else { if (GUILayout.Button("Generate Lighting", "DropDownButton", GUILayout.ExpandWidth(true))) { var menu = new GenericMenu(); menu.AddItem(new GUIContent("Bake the set"), false, () => { ProbeGIBaking.isBakingOnlyActiveScene = false; BakeLightingForSet(GetCurrentBakingSet()); }); menu.AddItem(new GUIContent("Bake loaded scenes"), false, () => { ProbeGIBaking.isBakingOnlyActiveScene = false; Lightmapping.BakeAsync(); }); menu.AddItem(new GUIContent("Bake active scene"), false, () => { ProbeGIBaking.isBakingOnlyActiveScene = true; Lightmapping.BakeAsync(); }); menu.ShowAsContext(); } } EditorGUILayout.EndHorizontal(); }
static EditorHotkeysTracker() { SceneView.onSceneGUIDelegate += view => { var e = Event.current; if (e != null && e.keyCode != KeyCode.None) { if (e.keyCode == KeyCode.B && e.shift) { if (!Lightmapping.isRunning) { Lightmapping.BakeAsync(); } } if (e.keyCode == KeyCode.C && e.shift) { if (Lightmapping.isRunning) { Lightmapping.Cancel(); } } if (e.keyCode == KeyCode.E && e.shift) { if (!Lightmapping.isRunning) { Lightmapping.Clear(); } } if (e.keyCode == KeyCode.H && e.shift) { EditorPrefs.SetInt(PlayerSettings.productName + SceneManager.GetActiveScene().name + "FirstTime", 0); } if (e.keyCode == KeyCode.F && e.alt && e.control) { EditorApplication.ExecuteMenuItem("GameObject/Move To View"); } if (e.keyCode == KeyCode.F && e.shift) { EditorApplication.ExecuteMenuItem("Window/Lighting/Settings"); } if (e.keyCode == KeyCode.E && e.shift) { EditorApplication.ExecuteMenuItem("Lighting/Lighting Box"); } } }; }
//界面 void OnGUI() { GUILayout.Label("BakeSettings"); Width = EditorGUILayout.IntField("MaxAtlasWidth:", Width); Height = EditorGUILayout.IntField("MaxAtlasHeight:", Height); if (GUILayout.Button("Bake")) { LightmapEditorSettings.maxAtlasWidth = Width; LightmapEditorSettings.maxAtlasHeight = Height; Lightmapping.Clear(); Lightmapping.Bake(); Debuger.Log("烘培完成"); } }
public IEnumerator Export_Training_Data_With_AO_And_Tiled_Baking_On() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/ExtractTrainingDataScene.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.tiledBaking = LightingSettings.TiledBaking.Quarter; lightingSettings.exportTrainingData = false; lightingSettings.ao = true; Lightmapping.Clear(); Lightmapping.Bake(); while (Lightmapping.isRunning) { yield return(null); } Assert.That(!System.IO.Directory.Exists("Assets/TrainingData/Lightmap-0")); Assert.That(!System.IO.File.Exists("Assets/TrainingData/Lightmap-0/indirect.exr")); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); lightingSettings.exportTrainingData = true; Lightmapping.Bake(); while (Lightmapping.isRunning) { yield return(null); } Assert.That(System.IO.Directory.Exists("Assets/TrainingData/Lightmap-0")); Assert.That(System.IO.File.Exists("Assets/TrainingData/Lightmap-0/indirect.exr")); Assert.That(System.IO.File.Exists("Assets/TrainingData/Lightmap-0/ambient_occlusion.exr")); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); System.IO.Directory.Delete("Assets/TrainingData", true); Assert.That(!System.IO.Directory.Exists("Assets/TrainingData")); }
public IEnumerator ActivateAO_DuringABake_DoesNotFallback() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/BakeRestartScene.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.lightmapper = LightingSettings.Lightmapper.ProgressiveGPU; GameObject dirLightGO = GameObject.FindGameObjectsWithTag("TheLight")[0]; dirLightGO.SetActive(false); lightingSettings.ao = false; Lightmapping.Clear(); Lightmapping.BakeAsync(); foreach (bool b in RunABake(0.2f)) { yield return(null); } // Make sure it is still baking before we // switch the AO on and restart the bake Assert.IsTrue(Lightmapping.isBaking); // Switch AO on, cause the bake to restart lightingSettings.ao = true; foreach (bool b in RunABake(0.2f)) { yield return(null); } // Check that baking is still running Assert.IsTrue(Lightmapping.isBaking); // Check that we did not fallback to CPULM Assert.AreEqual(lightingSettings.lightmapper, LightingSettings.Lightmapper.ProgressiveGPU); Lightmapping.Cancel(); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }
public override void Execute(BuildContext context) { SceneSetup[] cacheSceneSetup = EditorSceneManager.GetSceneManagerSetup(); SceneSetup[] setup = scenes.Select(path => new SceneSetup { path = path, isLoaded = true, isSubScene = false }).ToArray(); setup[0].isActive = true; EditorSceneManager.RestoreSceneManagerSetup(setup); if (ClearBeforeBake) { Lightmapping.Clear(); } Lightmapping.Bake(); EditorSceneManager.RestoreSceneManagerSetup(cacheSceneSetup); }
/// <summary> /// クリアする /// </summary> void DoClear() { Lightmapping.ClearLightingDataAsset(); Lightmapping.Clear(); var instance = (LightmapSettingsPrefab)target; var go = instance.gameObject; instance.baked = default(bool); instance.unityVersion = default(string); instance.lightmaps = default(SerializableLightmapData[]); instance.lightmapsMode = default(LightmapsMode); instance.lightProbes = default(LightProbes); instance.reflectionProbes = default(Cubemap[]); instance.renderers = default(SerializableRenderer[]); instance.SetupLightmap(); DoApply(go); }
public override void OnInspectorGUI() { var holder = target as LightmapHolder; if (holder.renderers != null && holder.scales != null) { EditorGUILayout.LabelField($"{holder.renderers.Length} renderers in {holder.scales.Length} indices"); } if (GUILayout.Button("Clear Lightmaps")) { ClearHolder(holder); Lightmapping.Clear(); } if (Lightmapping.isRunning) { EditorGUILayout.LabelField("Baking..."); } else { if (GUILayout.Button("Bake")) { ClearHolder(holder); LightmapEditorSettings.maxAtlasSize = MAX_SIZE; LightmapEditorSettings.filteringMode = LightmapEditorSettings.FilterMode.Auto; LightmapEditorSettings.lightmapper = LightmapEditorSettings.Lightmapper.ProgressiveGPU; Lightmapping.BakeAsync(); } if (GUILayout.Button("Combine Lightmaps")) { ClearHolder(holder); try { Combine(holder); } finally { EditorUtility.ClearProgressBar(); } } } }
static void _Light() { SceneViewTools.ShowWindowButton(UnityTypes.UnityEditor_LightingWindow, "Lighting", EditorIcon.lighting); SceneViewTools.ShowWindowButton(UnityTypes.UnityEditor_LightingExplorerWindow, "Light Explorer", EditorIcon.lighting); if (Lightmapping.isRunning) { if (SceneViewTools.ShowSideButton("Cancel", EditorIcon.lighting)) { Lightmapping.Cancel(); } } else { if (SceneViewTools.ShowSideButton("Generate Lighting", EditorIcon.lighting)) { Lightmapping.ClearLightingDataAsset(); Lightmapping.Clear(); Lightmapping.BakeAsync(); } } }
/// <inheritdoc /> protected override IEnumerator OnExecute(JobContext context) { _initialWorkflowMode = Lightmapping.giWorkflowMode; Lightmapping.giWorkflowMode = Lightmapping.GIWorkflowMode.OnDemand; if (ClearFirst) { Lightmapping.Clear(); } IsSuccess = Lightmapping.BakeAsync(); while (Lightmapping.isRunning) { yield return(null); } Lightmapping.giWorkflowMode = _initialWorkflowMode; LightingDataAssetPath = AssetDatabase.GetAssetPath(Lightmapping.lightingDataAsset); }
public IEnumerator Extract_AO_With_Tiled_Baking_On() { EditorSceneManager.OpenScene("Assets/Tests/Editor/Tests_Unit_Editmode/AOTestScene.unity", OpenSceneMode.Single); yield return(null); LightingSettings lightingSettings = null; Lightmapping.TryGetLightingSettings(out lightingSettings); Assert.That(lightingSettings, !Is.EqualTo(null), "LightingSettings is null"); lightingSettings.tiledBaking = LightingSettings.TiledBaking.Quarter; lightingSettings.extractAO = false; Lightmapping.Clear(); Lightmapping.Bake(); while (Lightmapping.isRunning) { yield return(null); } Assert.That(!System.IO.File.Exists("Assets/Tests/Editor/Tests_Unit_Editmode/AOTestScene/Lightmap-0_ao.exr")); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); lightingSettings.extractAO = true; Lightmapping.Bake(); while (Lightmapping.isRunning) { yield return(null); } Assert.That(System.IO.File.Exists("Assets/Tests/Editor/Tests_Unit_Editmode/AOTestScene/Lightmap-0_ao.exr")); Lightmapping.Clear(); Lightmapping.ClearLightingDataAsset(); }