例えばキャラクターのレベルをInspectorで設定できるようにするために
下記のようなスクリプトを作成したとすると
public class Character : MonoBehaviour { public int Level; }
レベルの上限が100だったとしてもそれ以上の値を設定できたり
マイナスの値を設定できたりしてしまいます
こうした問題を防ぎたい場合はOnValidate関数を使用します
public class Character : MonoBehaviour { public int Level; private void OnValidate() { // Levelは1から100まで Level = Mathf.Clamp(Level, 1, 100); } }
OnValidate関数はInspectorで値を設定するたびに呼び出されるので
値を制限する処理をOnValidate関数に実装しておくことで
不正な値が入力されることを防ぐことができます