はじめに
プレハブのインスタンスを複数選択した状態だと
Inspector に Revert ボタンが表示されず、一括で変更を取り消すことができません
そこで、一括で変更を取り消すことができるエディタ拡張を作成しました
ソースコード
using UnityEditor; using UnityEditor.SceneManagement; public static class MyEditor { [MenuItem( "Toools/Revert Selection Prefab %&Z" )] private static void RevertSelectionPrefab() { var gameObjects = Selection.gameObjects; if ( gameObjects == null || gameObjects.Length <= 0 ) return; foreach ( var go in gameObjects ) { PrefabUtility.RevertPrefabInstance( go ); } EditorSceneManager.MarkSceneDirty( EditorSceneManager.GetActiveScene() ); } }
使い方
上記のスクリプトを Unity の「Editor」フォルダに追加すると
Unity のメニューに「Tools>Revert Selection Prefab」が表示され、
この項目を選択すると選択中の複数のプレハブのインスタンスの変更を
一括で取り消すことができます
Ctrl + Alt + Z でも実行可能です