internal static Guid[] Internal_OnCollectAssets() { var list = new List <Guid>(); // Custom assets CollectAssets?.Invoke(list); // Plugin assets foreach (var plugin in PluginManager.GamePlugins) { plugin.OnCollectAssets(list); } if (list.Count == 0) { return(null); } return(list.ToArray()); }
public static void Run(bool deleteMissings) { var reports = ScanAssets.Report <MissingData>(CollectAssets.Collect(CollectAssets.Target.Hierarchy), ScanMissingAssets.Scan); if (0 < reports.Count) { var sb = new StringBuilder(1024); foreach (var missing in reports) { sb.Append(missing.ToString()).Append('\n'); } sb.Append("MISSING COUNT:").Append(reports.Count); if (deleteMissings) { foreach (var missing in reports) { var go = missing.owner; var indexes = missing.indexes; var so = new SerializedObject(go); var prop = so.FindProperty("m_Component"); for (int n = indexes.Count - 1; n >= 0; --n) { prop.DeleteArrayElementAtIndex(indexes[n]); } so.ApplyModifiedProperties(); EditorUtility.SetDirty(go); UnityEditor.SceneManagement.EditorSceneManager.MarkSceneDirty(go.scene); } } Debug.Log(sb.ToString()); } else { Debug.Log("MISSING NOT FOUND!"); } }
public static void Run() { var reports = ScanAssets.Report <string>(CollectAssets.Collect(CollectAssets.Target.Hierarchy), ScanNonCachedOImages.Scan); if (0 < reports.Count) { var sb = new StringBuilder(1024); foreach (string log in reports) { sb.Append(log).Append('\n'); } sb.Append("NON-CACHED COUNT:").Append(reports.Count); Debug.Log(sb.ToString()); } else { Debug.Log("NON-CACHED NOT FOUND!"); } }