Unity|指定したフォルダに写真を入れて自動でスプライトスプライトモードにする

1. やるべきことを理解する

        元の絵はフォルダに入れられてデフォルト(デフォルト)モードになっていますが、大量の絵を処理する必要がある場合は、スプライトモードにドラッグしてほしい=unityの本来の機能を変更したいです。

第 2 に、unity を使用すると、独自の機能の一部を変更できます。独自の unity をカスタマイズできます。

        これには UnityEditor を使用する必要があるため、 using UnityEditor をコードに追加する必要があります

3、unityEditor

        ここで変更したいのは、画像をインポートするときに画像モードを変更することなので、コンテンツのこの部分がここにインポートされるため、AssetPostprocessorを継承する必要があります。

using UnityEditor;
using UnityEngine;

public class SpriteProcessor : AssetPostprocessor
{}

4. コードを書き始める

TextureImporter テクスチャ インポーター。このクラスを使用して、ユニティ ピクチャのインポートの設定を変更します。

using UnityEditor;
using UnityEngine;

public class SpriteProcessor : AssetPostprocessor
{
    //这是人家写好的方法,当你把图片搞进来时
    private void OnPostprocessTexture(Texture2D texture) {
        //如果我们的文件夹里有Sprites这个名字
        if (assetPath.IndexOf("/Sprites/")!= -1)
        {
            //assetImporter就是拖进来的东西,在AssetProstprocessor类里写好的,你可以直接用
            //强制转换成TextureImporter
            TextureImporter textureImporter = (TextureImporter)assetImporter;
            //把格式改成sprite
            textureImporter.textureType = TextureImporterType.Sprite;
            //图片不用分割,就一张
            textureImporter.spriteImportMode = SpriteImportMode.Single;
            //有透明通道
            textureImporter.alphaIsTransparency = true;
            //不需要图片深度
            textureImporter.mipmapEnabled = false;
        }
    }
}

5. 注意事項

        これは修正されたエディターのコードです。パックするときに、コンテンツのこの部分をパックする必要はありません。これは Unity が特別に用意した専用のフォルダで、エディタによるパッケージングや動作への影響はありません。

 

おすすめ

転載: blog.csdn.net/weixin_49427945/article/details/130260089