【Unity】ボタン作成時のカスタム拡張

UnityEditor のメニューに [GameObject/UI/Button] でボタンを作成したが、
プロジェクトによってはカスタムのコンポーネントを追加したり、
デフォ画像を設定したりしたいわけですが、

毎回手動でやると面倒ですよね!!!!

UnityEditor.UI.MenuOptions というクラスをHACKしてコールバックを追加してみました。

gist.github.com

使い方

例: 自前の ButtonSE というコンポーネントを追加したい!
gist.github.com

とても手軽になりました!

MenuItem 重複による警告

Cannot add menu item 'GameObject/UI/Button' for method 'MenuOptions.AddButton' because a menu item with the same name already exists.

上記の警告が表示されるので、気になる場合

// MenuOptions.cs
[MenuItem("GameObject/UI/Button", false, 2001)]
↓
[MenuItem("GameObject/UI/Button/Create", false, 2001)]

に変更すれば警告は消えます。(その代わりにメニューの階層が深くなりますorz)