Odinでプロパティ経由でシリアライズフィールドにアクセスできて、これが面白い。
下記のようなことができたりする。(下記はOdinに含まれているサンプルコードを改造したもの。奇数に値を制限している)
using Sirenix.OdinInspector; using UnityEngine; public class NewBehaviourScript : MonoBehaviour { [SerializeField, HideInInspector] private int oddNumber = 1; [ShowInInspector] public int OddNumber { get { return oddNumber; } set { oddNumber = value + (value + 1) % 2; } } }
あ、これ、滅茶苦茶便利なやつじゃない?
たとえば、種類を選択すると設定項目の表示が変わるのとか、これとEnableIfとかで簡単に実装できそうな予感。