public static void ExportSprite() { string sourcePath = HS_Path.CombinePath("Assets", "SubAssets", "Raw", "Sprite"); string targetPath = HS_Path.CombinePath("Assets", "SubAssets", "Res", "Prefabs", "Sprite"); string[] allFolders = AssetDatabase.GetSubFolders(sourcePath); for (int i = 0; i < allFolders.Length; i++) { string[] pathDatas = HS_Path.SplitPath(allFolders[i]); string tagName = pathDatas[pathDatas.Length - 1]; string[] allAssets = AssetDatabase.FindAssets("t:Sprite", new string[] { allFolders[i] }); for (int j = 0; j < allAssets.Length; j++) { string assetPath = AssetDatabase.GUIDToAssetPath(allAssets[j]); TextureImporter ti = TextureImporter.GetAtPath(assetPath) as TextureImporter; FormatTexture(ti, tagName); Sprite sprite = AssetDatabase.LoadAssetAtPath <Sprite>(assetPath); GameObject go = new GameObject(sprite.name); go.AddComponent <SpriteRenderer>().sprite = sprite; if (!AssetDatabase.IsValidFolder(HS_Path.CombinePath(targetPath, tagName))) { AssetDatabase.CreateFolder(targetPath, tagName); } string prefabPath = HS_Path.CombinePath(HS_Path.CombinePath(targetPath, tagName), sprite.name + ".prefab"); PrefabUtility.CreatePrefab(prefabPath, go); GameObject.DestroyImmediate(go); } } AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); Debug.Log("Done!"); }
public void UpdateLayout() { string gridCellPath = HS_Path.CombinePath("Assets", "SubAssets", "Res", "Prefabs", "UIListCell"); if (mCellPrefab == null) { Debug.Log(mCellPrefabName); if (mCellPrefabName != "") { string cellPrefabPath = HS_Path.CombinePath(gridCellPath, mCellPrefabName + ".prefab"); Debug.Log(cellPrefabPath); GameObject prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(cellPrefabPath, typeof(GameObject)) as GameObject; mCellPrefab = HS_ViewManager.UIAddChild(mGridContent.gameObject, prefab); mCellPrefab.name = "CellPrefab"; } } if (mGridContent == null) { Debug.LogError("Not specified GridContent"); return; } if (mCellPrefab == null) { Debug.LogError("Not specified CellPrefab"); return; } for (int i = mGridContent.transform.childCount - 1; i >= 0; i--) { Transform t = mGridContent.transform.GetChild(i); if (t.gameObject != mCellPrefab) { DestroyImmediate(t.gameObject); } } int count = mCellCount - mGridContent.transform.childCount; for (int i = 0; i < count; i++) { GameObject cell = HS_ViewManager.UIAddChild(mGridContent.gameObject, mCellPrefab); cell.name = "Cell(clone)"; } }
public static void ExportMusic() { string sourcePath = HS_Path.CombinePath("Assets", "SubAssets", "Raw", "Music"); string targetPath = HS_Path.CombinePath("Assets", "SubAssets", "Res", "Prefabs", "Music"); string[] allAssets = AssetDatabase.FindAssets("t:Object", new string[] { sourcePath }); for (int i = 0; i < allAssets.Length; i++) { string assetPath = AssetDatabase.GUIDToAssetPath(allAssets[i]); AudioClip prefab = AssetDatabase.LoadAssetAtPath <AudioClip>(assetPath); if (prefab != null) { string prefabPath = HS_Path.CombinePath(targetPath, HS_Path.GetFileName(assetPath)); AssetDatabase.CopyAsset(assetPath, prefabPath); } } AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); Debug.Log("Done!"); }
public static void SetPackingTagBatch() { string resPath = HS_Path.CombinePath("Assets", "SubAssets", "Raw", "UI"); string[] allFolders = AssetDatabase.GetSubFolders(resPath); for (int i = 0; i < allFolders.Length; i++) { string[] pathDatas = HS_Path.SplitPath(allFolders[i]); string tagName = pathDatas[pathDatas.Length - 1]; string[] allAssets = AssetDatabase.FindAssets("t:Sprite", new string[] { allFolders[i] }); for (int j = 0; j < allAssets.Length; j++) { string assetPath = AssetDatabase.GUIDToAssetPath(allAssets[j]); TextureImporter ti = TextureImporter.GetAtPath(assetPath) as TextureImporter; FormatTexture(ti, tagName); } } AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); Debug.Log("Done!"); }