PSD ファイルのインポーターのオーバーライド
デフォルトでは、.psd ファイルのインポートにはテクスチャインポーターを使用します。PSD Importer を使用して .psd ファイルをインポートする場合は、.psd ファイルを選択し、Importer ドロップダウンをクリックして、UnityEditor.U2D.PSD.PSDImporter を選択します。
Importer ドロップダウン。
このプロセスを自動化するスクリプトを作成することもできます。以下は、AssetDatabase.SetImporterOverride
メソッドを使用して自動化スクリプトを作成する方法の例です。
SetImporterOverride スクリプトの例
ChangePsdImporterUtility.cs
using UnityEditor;
using UnityEditor.U2D.PSD;
using UnityEngine;
public static class ChangePsdImporterUtility
{
/// <summary>
/// 現在選択されている .psd ファイルのインポーターを変更します。
/// </summary>
[MenuItem("Assets/2D Importer/Change PSD File Importer", false, 30)]
static void ChangeImporter()
{
foreach (var obj in Selection.objects)
{
var path = AssetDatabase.GetAssetPath(obj);
var ext = System.IO.Path.GetExtension(path);
if (ext == ".psd")
{
var importer = AssetImporter.GetAtPath(path);
if (importer is PSDImporter)
{
Debug.Log($"{path} is now imported with TextureImporter");
AssetDatabase.ClearImporterOverride(path);
}
else
{
Debug.Log($"{path} is now imported with PSDImporter");
AssetDatabase.SetImporterOverride<PSDImporter>(path);
}
}
}
}
}