當我們將圖片導入到工程中時,unity 3d會對圖片進行處理,設置圖片的默認格式。如下圖所示,是圖片導入到工程中,unity 3d進行的默認設置。
但是,一般情況下,這樣的圖片格式并不能滿足我們的需求。所以我就想,有沒有辦法修改圖片導入時設置的格式呢?答案是有的。
首先說一下思路:
1. 我們可以在Assets文件夾下建立一個文件夾,例如:GameResources。只有當將圖片導入GameResources文件夾內時,才會對圖片進行處理。
2. 有些圖片需要打包到圖集中。那么,我們可以在GameResources下面建立以圖集名命名的文件夾,例如:UI。UI文件夾下的圖片的圖集都會被設置為UI。
3. 有時我們的工程中不希望導入某些類型的圖片,例如.dds。那么可以對該類型的圖片進行過濾。
代碼如下:
using UnityEngine;using System.Collections;using UnityEditor;using System.Reflection;public class ImportSetting : AssetPostprocessor{ static int[] maxSizes = { 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192 }; static readonly string DEFAULTS_KEY = "DEFAULTS_DONE"; static readonly uint DEFAULTS_VERSION = 2; public bool IsAssetProcessed { get { string key = string.Format("{0}_{1}", DEFAULTS_KEY, DEFAULTS_VERSION); return assetImporter.userData.Contains(key); } set { string key = string.Format("{0}_{1}", DEFAULTS_KEY, DEFAULTS_VERSION); assetImporter.userData = value ?&n