Version: 2022.3
言語: 日本語
public static void RegisterImporterUndo (string path, string name);

パラメーター

path Path of the asset importer to register for Undo.
name Undo 名

説明

Copies the state of the importer for the given asset path.

This method is used to Undo a AssetDatabase.SetImporterOverride operation.

using UnityEditor;
using UnityEngine;
using UnityEditor.AssetImporters;
using UnityEditor.Experimental;

[ScriptedImporter(1, null, new[] {"fbx"})] class MyFBXImporter : ScriptedImporter { public override void OnImportAsset(AssetImportContext ctx) { var go = new GameObject("root"); ctx.AddObjectToAsset("root", go); ctx.SetMainObject(go); } }

class ChangeImporterOverrideWithUndo { [MenuItem("Assets/Change Importer To MyFBXImporter With Undo")] static void ChangeImporterWithUndo() { var assetPath = AssetDatabase.GetAssetPath(Selection.activeObject); Undo.RegisterImporterUndo(assetPath, "Changed Importer"); AssetDatabase.SetImporterOverride<MyFBXImporter>(assetPath); } }