using UnityEngine;
using System.Collections;
using UnityEditor;
using System.IO;
public class changeTexture{
[MenuItem("Tools/改变图片锚点,手动改Pivot为Custom")]
static void Init()
{
//获取Project视图中的选中目录下的所有图片
Object[] objects = Selection.GetFiltered(typeof(Object), SelectionMode.Unfiltered);
string dir = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf("/")) + "/" + AssetDatabase.GetAssetPath(objects[0]);
//Debug.LogError(dir);
string[] paths = Directory.GetFiles(dir, "*.png", SearchOption.AllDirectories);
//创建存放目录
string saveDir = Application.dataPath + "/BatchModifyTexture";
if (!Directory.Exists(saveDir))
{
Directory.CreateDirectory(saveDir);
}
//图片处理
for (int i = 0; i<paths.Length; i++)
{
string path = paths[i];
string assetPath = path.Substring(path.IndexOf("Assets/"));
string name = assetPath.Substring(assetPath.LastIndexOf("\\") + 1);
//Debug.LogWarning(assetPath);
//Debug.LogWarning(name);
//设置成可读
TextureImporter textureImporter = AssetImporter.GetAtPath(assetPath) as TextureImporter;
textureImporter.spritePivot = new Vector2(0.5f, 0);
Debug.LogError(assetPath);
AssetDatabase.ImportAsset(assetPath);
}
AssetDatabase.Refresh();
Debug.Log("BatchModifyTexture Finish");
}
}
改完之后再面板上是没有显示的,需要改Pivot为Custom