エディターウィザードを作成するにはこのクラスを継承します。
エディターウィザードは、メニューから開きます。
// Creates a simple wizard that lets you create a Light GameObject // or if the user clicks in "Apply", it will set the color of the currently // object selected to red
using UnityEditor; using UnityEngine;
public class WizardCreateLight : ScriptableWizard { public float range = 500; public Color color = Color.red;
[MenuItem("GameObject/Create Light Wizard")] static void CreateWizard() { ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create", "Apply"); //If you don't want to use the secondary button simply leave it out: //ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create"); }
void OnWizardCreate() { GameObject go = new GameObject("New Light"); Light lt = go.AddComponent<Light>(); lt.range = range; lt.color = color; }
void OnWizardUpdate() { helpString = "Please set the color of the light!"; }
// When the user presses the "Apply" button OnWizardOtherButton is called. void OnWizardOtherButton() { if (Selection.activeTransform != null) { Light lt = Selection.activeTransform.GetComponent<Light>();
if (lt != null) { lt.color = Color.red; } } } }
createButtonName | ウィザードの Creat ボタンに表示されるテキストを設定することができます |
errorString | ウィザードのエラーテキストを設定することができます |
helpString | ウィザードのヘルプテキストを設定することができます。 |
isValid | 有効にするとウィザードの Creat ボタンを無効にし、ユーザーはそれをクリックできません |
otherButtonName | ウィザードの第3選択肢のボタンとして表示されるテキストを設定することができます ボタンを除外するためにはこのパラメーターを省略します |
DrawWizardGUI | ScriptableWizard が GUI を更新する必要があるとき、内容を描画するために呼び出されます。 |
DisplayWizard | ウィザードを作成します。 |
OnWizardCreate | これはユーザーが Creat ボタンを押したときに呼び出されます。 |
OnWizardOtherButton | ユーザーが他のボタンをクリックしたときにアクションを提供できます |
OnWizardUpdate | ウィザードを開いたときやユーザーがウィザードで何かを変更するたびに呼び出されます |
focusedWindow | 現在キーボードフォーカスがある EditorWindow (Read Only) |
mouseOverWindow | 現在マウスのカーソルの下の EditorWindow (Read Only) |
autoRepaintOnSceneChange | シーンが変わるたびに自動的にウィンドウを再描画するかどうか |
maximized | Is this window maximized? |
maxSize | このウィンドウの最大サイズ |
minSize | このウィンドウの最小サイズ |
position | The desired position of the window in screen space. |
titleContent | GUIContent は EditorWindows のタイトルを描画するために使用します。 |
wantsMouseEnterLeaveWindow | Checks whether MouseEnterWindow and MouseLeaveWindow events are received in the GUI in this Editor window. |
wantsMouseMove | Checks whether MouseMove events are received in the GUI in this Editor window. |
hideFlags | Should the object be hidden, saved with the Scene or modifiable by the user? |
name | オブジェクト名 |
BeginWindows | すべてのポップアップウィンドウを表示するための開始領域をマークします |
Close | エディターウィンドウを閉じます |
EndWindows | EditorWindow.BeginWindows で開始したウィンドウグループを閉じます |
Focus | Moves keyboard focus to another EditorWindow. |
RemoveNotification | 表示している通知メッセージを停止します |
Repaint | ウィンドウの再描画を行います |
SendEvent | Event をウィンドウに送信します |
Show | Show the EditorWindow window. |
ShowAsDropDown | ドロップダウンの動作とスタイルを持つウィンドウを表示します |
ShowAuxWindow | 補助ウィンドウでエディターウィンドウを表示します |
ShowNotification | 通知メッセージを表示します |
ShowPopup | ポップアップスタイルのフレーミングを使用するエディターウィンドウを表示します |
ShowUtility | フローティングのユーティリティウィンドウとしてエディターウィンドウを表示します |
GetInstanceID | オブジェクトのインスタンス ID を返します |
ToString | Returns the name of the GameObject. |
FocusWindowIfItsOpen | エディターウィンドウが開いている場合に探し出し、最初に見つけたものにフォーカスを当てます |
GetWindow | 現在画面上にある t タイプの最初に見つけた EditorWindow を返します |
GetWindowWithRect | 現在画面上にある t タイプの最初に見つけた EditorWindow を返します |
Destroy | ゲームオブジェクトやコンポーネント、アセットを削除します |
DestroyImmediate | Destroys the object obj immediately. You are strongly recommended to use Destroy instead. |
DontDestroyOnLoad | Do not destroy the target Object when loading a new Scene. |
FindObjectOfType | タイプ type から最初に見つけたアクティブのオブジェクトを返します |
FindObjectsOfType | タイプから見つけたすべてのアクティブのオブジェクト配列を返します |
Instantiate | original のオブジェクトをクローンします |
CreateInstance | ScriptableObject のインスタンスを作成します。 |
bool | オブジェクトが存在するかどうか |
operator != | 二つのオブジェクトが異なるオブジェクトを参照しているか比較します |
operator == | 2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。 |
Awake | 新規ウィンドウが開くときに呼び出されます |
OnDestroy | OnDestroy is called to close the EditorWindow window. |
OnFocus | ウィンドウがキーボードフォーカスを取得するときに呼び出されます |
OnGUI | ここに独自のエディターの GUI を実装します |
OnHierarchyChange | Handler for message that is sent when an object or group of objects in the hierarchy changes. |
OnInspectorUpdate | OnInspectorUpdate は更新する機会をインスペクターに与え、秒当たり 10 回呼ばれます |
OnLostFocus | ウィンドウがキーボードフォーカスを失ったときに呼び出されます |
OnProjectChange | Handler for message that is sent whenever the state of the project changes. |
OnSelectionChange | 選択が変更されるたび呼び出されます |
Update | すべての表示されているウィンドウは秒あたり複数回呼び出されます |
Awake | ScriptableObject スクリプトを開始するとき、この関数は呼び出されます。 |
OnDestroy | ScriptableObject が破棄されるとき、この関数は呼び出されます。 |
OnDisable | ScriptableObject クラスのオブジェクトがスコープを外れるとき、この関数は呼び出されます。 |
OnEnable | オブジェクトがロードされたとき、この関数は呼び出されます。 |