【Unity3D自学记录】利用代码修改图片属性(Inspector)

这段时间一直都在打包资源,然后每次导入都要改图片的属性,真是麻烦,所以一直在寻找一键修改并且打包的方法。

终于让我找到了,太坑人了。

根据自己的需求改代码哦,相信大家都能看明白。

核心部分:

TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
            ti.textureType = TextureImporterType.GUI;
            ti.filterMode = FilterMode.Point;
            ti.textureFormat = TextureImporterFormat.RGBA32;


全部代码如下:

using UnityEngine;
using System.Collections;
using UnityEditor;

public class AssetBundleTest : Editor
{
	
	
    [MenuItem("Creat/CreateAssetBunldes")]
    public static void CreateAssetBunldes()
    {
        Object[] SelectedAsset = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);

        foreach (Object obj in SelectedAsset)
        {
            TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
            ti.textureType = TextureImporterType.GUI;
            ti.filterMode = FilterMode.Point;
            ti.textureFormat = TextureImporterFormat.RGBA32;
 
            string targetPath = Application.dataPath + "/Asset/" + obj.name + ".assetbundle";
            if (BuildPipeline.BuildAssetBundle(obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies))
            {
                Debug.Log(obj.name + "资源打包成功");
            }
            else
            {
                Debug.Log(obj.name + "资源打包失败");
            }
        }

        AssetDatabase.Refresh();

    }
}

希望大家喜欢。

猜你喜欢

转载自blog.csdn.net/hackdjh/article/details/40424823