コガネブログ

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

【Unity】EditorWindow 内にサブウィンドウを表示できる「UnitySubWindow」紹介

はじめに

「UnitySubWindow」を Unity プロジェクトに導入することで
EditorWindow 内にサブウィンドウを表示できるようになります

使用例

using UnityEditor;
using UnityEngine;

internal sealed class Example : MDIEditorWindow
{
    [MenuItem( "Tools/Hoge" )]
    private static void Open()
    {
        CreateWindow<Example>();
    }

    [EWSubWindow( "Sub 1", EWSubWindowIcon.Game )]
    private void SubWinA( Rect main )
    {
        GUI.Label( new Rect( main.x, main.y, main.width, 20 ), "Sub 1" );
    }

    [EWSubWindow( "Sub 2", EWSubWindowIcon.Project )]
    private void SubWinB( Rect main )
    {
        GUI.Label( new Rect( main.x, main.y, main.width, 20 ), "Sub 2" );
    }

    [EWSubWindow( "Sub 3", EWSubWindowIcon.Search )]
    private void SubWinC( Rect main )
    {
        GUI.Label( new Rect( main.x, main.y, main.width, 20 ), "Sub 3" );
    }

    [EWSubWindow( "Sub 4", EWSubWindowIcon.None )]
    private void SubWinD( Rect main )
    {
        GUI.Label( new Rect( main.x, main.y, main.width, 20 ), "Sub 4" );
    }
}

f:id:baba_s:20210921160414g:plain