这段时间一直都在打包资源,然后每次导入都要改图片的属性。真是麻烦,所以一直在寻找一键改动而且打包的方法。
最终让我找到了,太坑人了。
依据自己的需求改代码哦,相信大家都能看明确。
核心部分:
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(); }
}
希望大家喜欢。