protected void Awake() { if (HighLogic.LoadedScene == GameScenes.LOADING) { PopulateConfig(); LoadTextures(); } else if (HighLogic.LoadedScene == GameScenes.MAINMENU && !Compressed) { Update(); Compressed = true; foreach (GameDatabase.TextureInfo Texture in GameDatabase.Instance.databaseTexture) { Texture2D texture = Texture.texture; Log("--------------------------------------------------------"); Log("Name: " + texture.name); Log("Format: " + texture.format.ToString()); Log("MipMaps: " + texture.mipmapCount.ToString()); Log("Size: " + texture.width.ToString() + "x" + texture.height); Log("Readable: " + Texture.isReadable); } long bSaved = memorySaved; long kbSaved = (long)(bSaved / 1024f); long mbSaved = (long)(kbSaved / 1024f); Log("Memory Saved : " + bSaved.ToString() + "B"); Log("Memory Saved : " + kbSaved.ToString() + "kB"); Log("Memory Saved : " + mbSaved.ToString() + "MB"); TextureConverter.DestroyImageBuffer(); Resources.UnloadUnusedAssets(); System.GC.Collect(); } }
protected void Start() { if (HighLogic.LoadedScene == GameScenes.LOADING) { DatabaseLoaderTexture_ATM.PopulateConfig(); SetupLoaders(); } else if (HighLogic.LoadedScene == GameScenes.MAINMENU && !Compressed) { Update(); Compressed = true; foreach (GameDatabase.TextureInfo Texture in GameDatabase.Instance.databaseTexture) { Texture2D texture = Texture.texture; Log("--------------------------------------------------------"); Log("Name: " + texture.name); Log("Format: " + texture.format.ToString()); Log("MipMaps: " + texture.mipmapCount.ToString()); Log("Size: " + texture.width.ToString() + "x" + texture.height); Log("Readable: " + Texture.isReadable); bool readable = true; try { Texture.texture.GetPixel(0, 0); } catch { readable = false; }; if (readable != Texture.isReadable) { ActiveTextureManagement.DBGLog("Readbility does not match!"); } } long bSaved = memorySaved; long kbSaved = (long)(bSaved / 1024f); long mbSaved = (long)(kbSaved / 1024f); Log("Memory Saved : " + bSaved.ToString() + "B"); Log("Memory Saved : " + kbSaved.ToString() + "kB"); Log("Memory Saved : " + mbSaved.ToString() + "MB"); TextureConverter.DestroyImageBuffer(); Resources.UnloadUnusedAssets(); System.GC.Collect(); } }