夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

UnityEditor拡張で確認用のダイアログを表示する。

本日はUnity枠です。

Unityの拡張機能としてダイアログを実装していきます。

〇ダイアログとは?

ダイアログはエラーなどを中心にUnityのあらゆる場面で見ることができます。

その多くが警告やエラーに対して処理を続行するかといったユーザーの判断を仰ぐものや、ユーザーに注意を促すものになっています。

〇ダイアログの実装

ダイアログはUnityのEditor拡張機能を使用して作成します。

Editorフォルダ内に新規でスクリプトを作成します。

EditorUtility.DisplayDialog("題名","内容","Trueのボタン"、"falseのボタン")というように記述することでダイアログが作成できます。

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;

[CustomEditor(typeof(dialog))]
public class dialog : EditorWindow
{

    [MenuItem("Test/Dialog")]
    static void ShowDialog()
    {
        EditorUtility.DisplayDialog("Title","message","OK","NG");
    }
    
}

これを実行することで次のようにダイアログが表示されます。

bool型として取得することでOKを選択した場合の処理を定義できます。

    [MenuItem("Test/Dialog")]
    static void ShowDialog()
    {
        bool Ok = EditorUtility.DisplayDialog("Title", "message", "OK", "NG");

        if (Ok)
        {
            Debug.Log("OKが選択されました。");
        }
        else
        {
            Debug.Log("NGが選択されました.");
        }
    }
    

以上でUnityEditor拡張で確認用のダイアログを表示できました。

自身のツールや破壊的変更が加わる可能性がある処理などで警告を込めて実装しておくと便利そうです。

本日は以上です。