(:3[kanのメモ帳]

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

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発したゲームです!


Inspectorに表示されるenumの要素名を変更したり一部非表示にしたりする InspectorNameAttribute【Unity】【属性】


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

この記事でのバージョン
Unity 2021.1.16f1


はじめに

Unityではenumの変数をInspectorに表示すると自動的にプルダウンになります。

ちなみに頭文字が小文字でもアンダーバーを付けていても頭文字は大文字になります。

//てきとうなenum
public enum ColorType {
  Red, 
  blue, //Inspector上ではBlue
  _green //Inspector上ではGreen
}

//Inspector上ではプルダウンで表示される
public ColorType _colorType;
f:id:kan_kikuchi:20210928203112g:plain


今回はそんなInspector上でのenumの要素の表記を変える方法の紹介です!

f:id:kan_kikuchi:20210928203209g:plain



InspectorNameAttribute

今回はInspectorNameAttributeという属性を使って

Inspectorに表示されるenumの要素名を変更します。



使い方は簡単、各要素に上に[InspectorName("表示したい名前")]という形で属性を追加するだけ。

public enum ColorType {
  [InspectorName("赤")]
  Red, 
  [InspectorName("あお")]
  blue, 
  [InspectorName("#B2D235")]
  _green
}
f:id:kan_kikuchi:20210928203209g:plain


ちなみに空文字にするとその要素を表示しない(選択出来ない)ようにする事も可能です。

public enum ColorType {
  [InspectorName("赤")]
  Red, 
  [InspectorName("")]//blueは表示されず、Inspector上では選択出来ないように
  blue, 
  [InspectorName("#B2D235")]
  _green
}
f:id:kan_kikuchi:20210928203249g:plain