public static KResourceLoaderDebugger Create(string type, string url, AbstractResourceLoader loader) { if (IsApplicationQuit) { return(null); } const string bigType = "ResourceLoaderDebuger"; var newHelpGameObject = new GameObject(string.Format("{0}-{1}", type, url)); KDebuggerObjectTool.SetParent(bigType, type, newHelpGameObject); var newHelp = newHelpGameObject.AddComponent <KResourceLoaderDebugger>(); newHelp.TheLoader = loader; loader.DisposeEvent += () => { if (!IsApplicationQuit) { KDebuggerObjectTool.RemoveFromParent(bigType, type, newHelpGameObject); } }; return(newHelp); }
public static KResoourceLoadedAssetDebugger Create(string type, string url, object rawObj) { var mainAsset = rawObj as UnityEngine.Object; UnityEngine.Object[] allAssets = null; long totalSize = 0; if (mainAsset != null) { totalSize = UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(mainAsset); } else { allAssets = rawObj as UnityEngine.Object[]; type = allAssets[0].GetType().Name; foreach (var asset in allAssets) { totalSize += UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(asset); } } var newHelpGameObject = new GameObject(string.Format("LoadedObject-{0}-{1}", type, url)); KDebuggerObjectTool.SetParent(bigType, type, newHelpGameObject); var newHelp = newHelpGameObject.AddComponent <KResoourceLoadedAssetDebugger>(); newHelp.Type = type; newHelp.mainAsset = mainAsset; newHelp.allAssets = allAssets; newHelp.MemorySize = string.Format("{0:F5}KB", totalSize / 1024f); return(newHelp); }