Unityのエディタ拡張でエディタウィンドウ上に通知メッセージを表示する方法です。
Unity2020.1.17
はじめに
Unityのエディタウィンドウには通知メッセージを表示するための機能があります。
本記事ではこの機能の使い方についてまとめます。
使い方と仕様
使い方は簡単で、 EditorWindow.ShowNotification()
を呼ぶだけです。
第一引数にメッセージを、第二引数(オプション)に表示する秒数を入力します。
メッセージが消える前に複数回呼んだ場合には最後のメッセージだけが表示されます。
また強制的にメッセージを消すにはEditorWindow.RemoveNotification()
を呼びます。
サンプルコードと動作例
サンプルコードは以下の通りです。
using UnityEditor; using UnityEngine; public sealed class ExampleNotificationWindow : EditorWindow { private const float FadeoutWait = 10.5f; private int _showCount; private void OnGUI() { if (GUILayout.Button("Show Notification")) { ShowNotification(new GUIContent($"Notification {_showCount}"), FadeoutWait); _showCount++; } if (GUILayout.Button("Remove Notification")) RemoveNotification(); } [MenuItem("Window/ExampleWindow")] private static void Window() { var window = GetWindow<ExampleNotificationWindow>(); window.Show(); } }
このウィンドウを表示すると以下のような結果が得られます。