メインコンテンツへスキップ
< すべてのトピックに戻る

OnValidateを使う時の注意点は?

Inspectorで数値を変更した瞬間に呼ばれる便利なメソッドですが、中に重い処理(Findや Instantiate 等)を絶対に書いてはいけません。

OnValidateはシーンのロード時やエディタの操作中に裏で何度も呼び出されるため、ここに重い処理を書くとUnityエディタ全体の動作がカクカクになり、最悪クラッシュするからです。

変数の値がマイナスにならないように Mathf.Clampで制限をかけたり、必須コンポーネントがアサインされているかチェックして Debug.LogWarningを出す程度の、ごく軽い「値の補正」に留めてください。

目次

9周年キャンペーン実施中 早い申込みほど受講料がお得に