UnityのInspector上で特定のフィールド名を右クリックした際に表示されるメニューに、カスタムな動作や処理を追加したいことはよくあります。
そんなときに便利なのが、ContextMenuItem属性です。この属性を使うと、簡単にカスタムなメニュー項目を追加できます。具体的な使い方を見てみましょう。
using UnityEngine; public class ExampleScript : MonoBehaviour { [ContextMenuItem("Log Speed", nameof(LogSpeed))] [SerializeField] private float _speed = 1f; private void LogSpeed() { Debug.Log(_speed); } }
上記の例では、"speed"というフィールドにContextMenuItem属性を追加し、"Log Speed"というメニュー項目を追加しています。このメニュー項目をクリックすると、LogSpeedメソッドが呼び出され、"speed"の値がログに出力されます。
これにより、Inspector上で簡単にカスタムメニュー項目を追加し、開発効率を向上させることができます。