コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】エディタで表示できるウィンドウの名前を調べる

f:id:baba_s:20150429142018p:plain

  1. 「Window」メニューからすべてのウィンドウを開く
  2. 上記のスクリプトを「Editor」フォルダに保存する
  3. メニューの「Tools>Example」を実行する
  4. Console に各ウィンドウの名前が出力される
ウィンドウ 名前
Scene UnityEditor.SceneView
Game UnityEditor.GameView
Inspector UnityEditor.InspectorWindow
Hierarchy UnityEditor.SceneHierarchyWindow
Project UnityEditor.ProjectBrowser
Animation UnityEditor.AnimationWindow
Profiler UnityEditor.ProfilerWindow
Audio Mixer UnityEditor.AudioMixerWindow
Asset Store UnityEditor.AssetStoreWindow
Animator Parameter UnityEditor.Graphs.ParameterControllerEditor
Animator UnityEditor.Graphs.AnimatorControllerTool
Sprite Packer UnityEditor.Sprites.PackerWindow
Lighting UnityEditor.LightingWindow
Occlusion Culling UnityEditor.OcclusionCullingWindow
Frame Debugger UnityEditor.FrameDebuggerWindow
Navigation UnityEditor.NavMeshEditorWindow
Console UnityEditor.ConsoleWindow

これらのウィンドウ名を使用することで
エディタ拡張時にウィンドウを名前で検索して
再描画する関数を実行する、といった処理が記述できるようになります

// Hierarchy ビューを再描画する
var hierarchy = Resources
    .FindObjectsOfTypeAll<EditorWindow>()
    .First( c => c.GetType().ToString() == "UnityEditor.SceneHierarchyWindow" );

hierarchy.Repaint();