コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】【Odin - Inspector and Serializer】GUI を拡張する「OnInspectorGUI」属性

目次 「OnInspectorGUI」属性 「OnInspectorGUI」属性を使用すると GUI を拡張することができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [OnInspectorGUI( "DrawLabel1" )] public int i1; [OnInspector…

【Unity】【Odin - Inspector and Serializer】設定された値をラップアラウンドする「Wrap」属性

目次 「Wrap」属性 「Wrap」属性を使用すると 設定された値をラップアラウンドすることができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [Wrap( 0, 360 )] public int i; } 使い方 下記のように記述する…

【Unity】【Odin - Inspector and Serializer】bool 値のチェックボックスを変数名の左側に表示する「ToggleLeft」属性

目次 「ToggleLeft」属性 「ToggleLeft」属性を使用すると bool 値のチェックボックスを変数名の左側に表示することができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { public bool isEnable1; [ToggleLef…

【Unity】【Odin - Inspector and Serializer】変数やプロパティにカーソルを重ねた時にヒントを表示する「PropertyTooltip」属性

目次 「PropertyTooltip」属性 「PropertyTooltip」属性を使用すると Inspector で変数やプロパティにカーソルを重ねた時に ヒントを表示することができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { // Un…

【Unity】【Odin - Inspector and Serializer】GUI に色を設定できる「GUIColor」属性

目次 「GUIColor」属性 「GUIColor」属性を使用すると Inspector に表示される GUI の色を設定できるようになります using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [GUIColor( 0, 1, 1 )] public int i1; [GUICo…

【Unity】【Odin - Inspector and Serializer】文字列を複数行表示できる「MultiLineProperty」属性

目次 「MultiLineProperty」属性 「MultiLineProperty」属性を使用すると Inspector で文字列を複数行に分けて表示することができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { // Unity [Multiline( 3 )] …

【Unity】【Odin - Inspector and Serializer】設定できる値を制限できる「MinValue」「MaxValue」属性

目次 「MinValue」「MaxValue」属性 「MinValue」「MaxValue」属性を使用すると Inspector で設定できる値の最小値と最大値を設定できるようになります using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [MinValue(…

【Unity】【Odin - Inspector and Serializer】最小値と最大値の範囲を設定できる「MinMaxSlider」属性

目次 「MinMaxSlider」属性 「MinMaxSlider」属性を使用すると Inspector で最小値と最大値の範囲を設定できるようになります using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [MinMaxSlider( -10, 10 )] public V…

【Unity】【Odin - Inspector and Serializer】パラメータの内容を編集不可能な文字列で表示する「DisplayAsString」属性

目次 「DisplayAsString」属性 「DisplayAsString」属性を使用すると 変数やプロパティの内容を、 編集不可能な文字列で Inspector に表示できます using Sirenix.OdinInspector; using System; using UnityEngine; public class Example : MonoBehaviour { …

【Unity】【Odin - Inspector and Serializer】意図しない値が設定されたらエラーメッセージを表示する「ValidateInput」属性

目次 「ValidateInput」属性 「ValidateInput」属性を使用すると 意図しない値が設定された時にエラーメッセージを表示できるようになります using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [ValidateInput( "Has…

【Unity】【Odin - Inspector and Serializer】Project 内のアセットや、Scene 上のオブジェクトやコンポーネントのみをアタッチ可能にする「AssetsOnly」「SceneObjectsOnly」属性

目次 「AssetsOnly」「SceneObjectsOnly」属性 「AssetsOnly」属性を使用すると Project 内のアセットのみアタッチできるようになります 「SceneObjectsOnly」属性を使用すると Scene 上のオブジェクトやコンポーネントのみ アタッチできるようになります us…

【Unity】【Odin - Inspector and Serializer】Quaternion、Vector3、Bounds、Rect の視認性が向上

目次 Quaternion、Vector3、Bounds、Rect の表示の拡張 「Odin - Inspector and Serializer」を Unity プロジェクトに追加すると Quaternion、Vector3、Bounds、Rect の表示が拡張されて 少しだけ視認性が向上します using UnityEngine; public class Exampl…

【Unity】【Odin - Inspector and Serializer】ゲームを実行しているかどうかで項目を非表示にする「HideInPlayMode」「HideInEditorMode」属性

目次 「HideInPlayMode」「HideInEditorMode」属性 「HideInPlayMode」属性を使用すると ゲームを実行している間は項目が非表示になります 「HideInEditorMode」属性を使用すると ゲームを実行していない時は項目が非表示になります using Sirenix.OdinInspe…

【Unity】【Odin - Inspector and Serializer】ラベルの文言を変更する「LabelText」属性

目次 「LabelText」属性 「LabelText」属性を使用すると 変数やプロパティのラベルをカスタマイズできます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [LabelText( "変数 1" )] public int i1; [LabelText( "…

【Unity】【Odin - Inspector and Serializer】パラメータの表示順を変更できる「PropertyOrder」属性

目次 「PropertyOrder」属性 「PropertyOrder」属性を使用すると 変数やプロパティの表示順を変更することができます using Sirenix.OdinInspector; using UnityEngine; public class Example : MonoBehaviour { [PropertyOrder( 2 )] public int i1; [Prope…