点検
車を定期点検にだしたら部品の劣化よりも走行距離が全然伸びてないことを注意された休日ニートな皆さんこんにちは。バッテリーの充電が不十分になりますよ、とやんわりと注意されましたがだからと言って用もないのに車を運転しようとは思わないのできっと次の定期点検でも同じようなことを言われるのだと思います。
Odin Inspector
皆さんはOdin Inspectorを使っていますか?Odin Inspectorは Unity界隈では非常に評価が高いアセットであり、導入することで Unity エディタが拡張され、作業を大幅に効率化する事が期待できます。
私はもう何年も前に導入して、このアセットなしには開発できないぐらいなんですが、変数のグルーピングなどいつも同じ機能ばかり使用していて調べてみると意外と知らい便利機能が備わっていて今後の為、これらの機能を忘れないように記事にまとめようと思います。
AssetList
List内に設定するGameObjectやScriptabelObjectを指定したフォルダ内から選ぶようになります。
例えば、以下のフォルダにPrefab化したGameObjectが格納されておりListに設定しておきたい場合、
設定するList変数の前にAssetListとファイルパスを設定しておくと
[AssetList(Path = "/Prepair/Prefab/")] public List<GameObject> AssetList;
フォルダ内のファイルがList化して表示されるので使用するファイルにチェックを入れるだけで済みます。
Color palette
指定した名前のカラーパレットから選んでColorを設定できます。
[ColorPalette("My Palette")] public Color MyColor;
カラーパレットを作成してない場合はこんな感じでInpspector上にボタンが表示されるので、これを押すと
カラーパレットの作成画面が表示されて作成することが出来ます。
カラーパレットを作り終えるとInspectorに反映されます。
Button
スクリプト内で関数の上に定義します。
[Button("スクリーンショット")] private void ScreenShoButton() { // スクリーンショットを保存 CaptureScreenShot("ScreenShot.png"); }
するとInspector上にボタンが表示されるので
これを押すとPlay Modeにしなくても、その関数が実行できます。デバッグに便利。
変数の設定系
Rangeで変数に設定する値の範囲を指定すると
[Range(0, 10)] public int Field = 2;
スライダーが表示され、指定範囲内で値を設定できます。
視覚的に変数をバーとして表示して設定したい場合は
[ProgressBar(0, 100)] public int ProgressBar = 50;
Progress Barを指定します。
スライダーと同様にDragで値も変更できます。
最後に
Odin Inspectorは少し高価なアセットですが、その値段なりの価値はあると思います。
今回紹介した機能以外にもDictionaryの内容を参照できたりと便利な機能がそろっているので、作業の効率化を考えるなら購入を検討してはいかがでしょうか。