如何夸奖一个网站做的好,最近一周新闻大事摘抄,seo电商,wordpress分享服务器目录这个方法主要是发现资源乱用的情况#xff0c;对应的逻辑可能要改一个才能用到自己的项目里面
[MenuItem(Tools/Prefab/查找选中资源依赖关系, false, 0)] public static void FindDependencies() { foreach (var guid in Selection.assetGUIDs…这个方法主要是发现资源乱用的情况对应的逻辑可能要改一个才能用到自己的项目里面
[MenuItem(Tools/Prefab/查找选中资源依赖关系, false, 0)] public static void FindDependencies() { foreach (var guid in Selection.assetGUIDs) { string lpath AssetDatabase.GUIDToAssetPath(guid); string dirName Path.GetDirectoryName(lpath); string folderName dirName.Substring(dirName.LastIndexOf(\\) 1); Debug.Log(----------------------------------------------------------------); GameObject go Selection.activeObject as GameObject; if (go null) { Debug.Log(选取对象出错); return; } string assetPath AssetDatabase.GetAssetPath(go); Dictionarystring, ListObjStruct dePathDic new Dictionarystring, ListObjStruct (); if (string.IsNullOrEmpty(assetPath)) { Debug.Log(注意,这不是预制体); return; } //获取预制体内所有Image组件 Image[] imgArr go.GetComponentsInChildrenImage(); if (imgArr null || imgArr.Length 0) { Debug.Log(预制体里没有Image组件); } else { foreach (var item in imgArr) { string path AssetDatabase.GetAssetPath(item.sprite.GetInstanceID()); if (!dePathDic.ContainsKey(path)) { dePathDic.Add(path, new ListObjStruct ()); } ObjStruct objStruct new ObjStruct(); if (item.sprite ! null) { objStruct.spriteName item.sprite.name; objStruct.objName item.transform.name; dePathDic[path].Add(objStruct); } } } foreach (var dependenciePath in AssetDatabase.GetDependencies(lpath, false)) { if (lpath ! dependenciePath !dependenciePath.Contains(cs)) { if (!dependenciePath.Contains(folderName) !dependenciePath.Contains(UICommonRes) !dependenciePath.Contains(Font)) { Debug.LogError(string.Format(资源使用不当 path {0} 依赖 {1}, lpath, dependenciePath)); if (dePathDic.TryGetValue(dependenciePath,out ListObjStruct list)) { for (int i 0; i list.Count; i) { Debug.LogError(string.Format(错误详情:对象名:{0} , Sprite名:{1}, list[i].objName, list[i].spriteName)); } } } else { Debug.Log(string.Format(lpath {0} 依赖 {1}, lpath, dependenciePath)); } } } } Debug.Log(查找依赖结束); }