[Unity基礎]匯入貼圖、模型等資原始檔時自動設定引數
阿新 • • 發佈:2019-01-22
程式碼設定Unity資源匯入引數
該類下有很多種資源匯入完成訊息通知:
OnPostprocessAudio音效匯入完成
OnPostprocessMaterial材質匯入完成
OnPostprocessModel模型匯入完成
OnPostprocessTexture貼圖匯入完成
OnPostprocessAllAssets所有資源匯入完成 。。。等等
還有資源匯入前:
OnPreprocessTexture圖片匯入之前呼叫。。。等等
using UnityEngine; using System.Collections; using UnityEditor; /// <summary> /// AssetPostprocessor: 貼圖、模型、聲音等資源匯入時呼叫,可自動設定相應引數 /// 匯入圖片時自動設定圖片的引數 /// </summary> public class TextureImportSetting : AssetPostprocessor{ /// <summary> /// 圖片匯入之前呼叫,可設定圖片的格式、Tag…… /// </summary> void OnPreprocessTexture() { TextureImporter importer = (TextureImporter)assetImporter; importer.textureType = TextureImporterType.Sprite; // 設定為Sprite型別 importer.mipmapEnabled = false; // 禁用mipmap //importer.spritePackingTag = "tag"; // 設定Sprite的打包Tag Debug.Log("OnPreprocessTexture"); } /// <summary> /// 圖片已經被壓縮、儲存到指定目錄下之後呼叫 /// </summary> /// <param name="texture"></param> void OnPostprocessTexure(Texture2D texture) { Debug.Log(texture.name); } /// <summary> /// 所有資源被匯入、刪除、移動完成之後呼叫 /// </summary> /// <param name="importedAssets"></param> /// <param name="deletedAssets"></param> /// <param name="movedAssets"></param> /// <param name="movedFromAssetPaths"></param> static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { foreach (string str in importedAssets) { Debug.Log("Reimported Asset: " + str); } foreach (string str in deletedAssets) { Debug.Log("Deleted Asset: " + str); } for (int i = 0; i < movedAssets.Length; i++) { Debug.Log("Moved Asset: " + movedAssets[i] + " from: " + movedFromAssetPaths[i]); } } }