読者です 読者をやめる 読者になる 読者になる

(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

Preferenceに開発者情報の設定を追加する【Unity】【エディタ拡張】


このエントリーをはてなブックマークに追加


この記事でのバージョン
Unity 5.1.0f3 Personal

はじめに


Unity - PreferenceからUnityの色々な設定が出来ますが、

エディタ拡張でここに独自のメニューを追加する事が出来るそうです。


f:id:kan_kikuchi:20150911133409p:plain


今回はこのPreferenceから開発者名を登録するエディタ拡張を作成しました。


f:id:kan_kikuchi:20150911133551p:plain


この方法も前回に引き続き、

Unity エディター拡張入門という本で知りました。


DeveloperInfo

早速コードから!



このDeveloperInfo.csをEditorディレクトリに入れると、上記にあった画像のように

PreferenceにDeveloper Infoという項目が出現します。


また、ここで設定した開発者名はEditorPrefsで保存しているため、

全てのプロジェクトで共通となります。その辺りの話については前回の記事をどうぞ。



他のクラスで開発者名を使いたい場合は以下の通りです。

//開発者名取得
string developerName = DeveloperInfo.GetDeveloperName();
//開発者名設定
DeveloperInfo.SetDeveloperName(developerName);


他のエディタ拡張から設定する場合もあったので、Setもpublicになっています。


肝心のPreferenceにメニューを追加する方法ですが、

以下のようにPreferenceItemを使います。

[PreferenceItem("Developer Info")]
private static void OnPreferenceGUI (){}


PreferenceItemの引数がメニュー名で、

その下のOnPreferenceGUI内にどんなGUIを表示するか記述します。


おわりに

今回、設定出来るようになった開発者名を何に使うかと言うと、以前書いた以下の記事です。



これは複数のテンプレを使えるように+新規スクリプトに開発者名等を自動で記入する

というものだったのですが、この段階では開発者名の設定及び保存方法が分かりませんでした。

なので、今回のDeveloperInfoを使えばそれが簡単に行えます!もっと早く知りたかった……


このテンプレ周りはまたまとめる予定なので、別記事にて。