プレイモードの時、Delayed属性を付けた変数はInspectorで値を変更した直後には値が更新されません。エンターボタンを押下するかフォーカスが移動した時に初めて値が更新されます。
using UnityEngine;
public class Sample : MonoBehaviour
{
[Delayed]
public int delayNumber;
void Update()
{
Debug.Log(delayNumber);
}
}
この画像だと、4を入力した時点だと値は反映されておらず、エンターを押した段階で初めて値が反映されています。
通常だと何が問題か。例えば123と値を入れたい時、通常時、値フィールドにまず1をに入力した時点からログに1が出力されるようになります。次に2を入れた時点で12が出力され、最後に3を入力した時点から123が出力されます。
値の性質によっては、この1や12がランタイムに反映されると困るような時があります。正確な値を入力し終わるまで、ランタイム側に値を反映させたくない場合に使用します。