|
@@ -1,106 +0,0 @@
|
|
|
-
|
|
|
-using dnlib.DotNet;
|
|
|
-using System.IO;
|
|
|
-using UnityEditor;
|
|
|
-using UnityEngine;
|
|
|
-
|
|
|
-namespace GFGEditor
|
|
|
-{
|
|
|
-
|
|
|
- public class TextureAutoSet : EditorWindow
|
|
|
- {
|
|
|
-
|
|
|
- [MenuItem("Assets/*****设置文件夹以及子文件夹下面的图片压缩格式为ASTC", priority = 0)]
|
|
|
- static void AutoSetASTC()
|
|
|
- {
|
|
|
- string[] guidArray = Selection.assetGUIDs;
|
|
|
- foreach (var item in guidArray)
|
|
|
- {
|
|
|
- string selectFloder = AssetDatabase.GUIDToAssetPath(item);
|
|
|
- DirectoryInfo root = new DirectoryInfo(selectFloder);
|
|
|
- GetFloder(root);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- static void GetFloder(DirectoryInfo root)
|
|
|
- {
|
|
|
- GetFile(root);
|
|
|
- //查找子文件夹
|
|
|
- DirectoryInfo[] array = root.GetDirectories();
|
|
|
- //Debug.Log(root);
|
|
|
- foreach (DirectoryInfo item in array)
|
|
|
- {
|
|
|
- GetFloder(item);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- static void GetFile(DirectoryInfo root)
|
|
|
- {
|
|
|
- //DirectoryInfo root = new DirectoryInfo(path);
|
|
|
- FileInfo[] fileDic = root.GetFiles();
|
|
|
- foreach (var file in fileDic)
|
|
|
- {
|
|
|
- //sDebug.Log(file);
|
|
|
- if (!file.FullName.EndsWith(".meta"))
|
|
|
- {
|
|
|
- //Debug.Log("-------------" + file.FullName);
|
|
|
- //Debug.Log(Application.dataPath);
|
|
|
- SetPicFormat(file.FullName.Replace(Application.dataPath.Replace("Assets", ""), ""));
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- static void SetPicFormat(string path)
|
|
|
- {
|
|
|
- string onePath = GetImageProjectPath(path);
|
|
|
- Debug.Log(onePath);
|
|
|
- TextureImporter textureImporter = AssetImporter.GetAtPath(onePath) as TextureImporter;
|
|
|
- if (textureImporter == null)
|
|
|
- return;
|
|
|
- if (textureImporter.mipmapEnabled == true)
|
|
|
- {
|
|
|
- textureImporter.mipmapEnabled = false;
|
|
|
- }
|
|
|
-
|
|
|
- ChangeTextureSetting(textureImporter);
|
|
|
- }
|
|
|
-
|
|
|
- public static void ChangeTextureSetting(TextureImporter textureImporter)
|
|
|
- {
|
|
|
- ChangeIphoneSetting(textureImporter);
|
|
|
- ChangeAndroidSetting(textureImporter);
|
|
|
- textureImporter.SaveAndReimport();
|
|
|
- }
|
|
|
-
|
|
|
- static void ChangeIphoneSetting(TextureImporter textureImporter)
|
|
|
- {
|
|
|
- TextureImporterPlatformSettings settings = textureImporter.GetPlatformTextureSettings("Iphone");
|
|
|
- settings.overridden = true;
|
|
|
- settings.maxTextureSize = 2048;
|
|
|
- settings.format = TextureImporterFormat.ASTC_6x6;
|
|
|
- textureImporter.SetPlatformTextureSettings(settings);
|
|
|
- }
|
|
|
- static void ChangeAndroidSetting(TextureImporter textureImporter)
|
|
|
- {
|
|
|
- TextureImporterPlatformSettings settings = textureImporter.GetPlatformTextureSettings("Android");
|
|
|
- settings.overridden = true;
|
|
|
- settings.maxTextureSize = 2048;
|
|
|
- settings.format = TextureImporterFormat.ASTC_6x6;
|
|
|
- textureImporter.SetPlatformTextureSettings(settings);
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 根据固定字符串得到资源路径
|
|
|
- /// </summary>
|
|
|
- /// <param name="fullName"></param>
|
|
|
- /// <returns></returns>
|
|
|
- static string GetImageProjectPath(string fullName)
|
|
|
- {
|
|
|
- string result = "";
|
|
|
- int index = fullName.LastIndexOf("Assets");
|
|
|
- result = fullName.Substring(index, fullName.Length - index);
|
|
|
- return result;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-}
|