MRが楽しい

MRやVRについて学習したことを書き残す

UnityでInspectorのフィールドの入力がエンターなどの確定時に反映されるようにする

本日はUnityの小ネタ枠です。
UnityでInspectorのフィールドの入力がエンターなどの確定時に反映されるようにする方法です。

DelayedAttribute

DelayedAttributeはint型やstring型のプロパティに設定するとフィールド入力の反映が値確定時に行われるようになります。
docs.unity3d.com

[Delayed]
public int _value;

通常時のフィールド入力

DelayedAttributeを設定しないプロパティは入力と同時に値が反映されます。
値が反映されるとログが表示される以下のサンプルスクリプトを作成しました。

例えばint型のプロパティに 12 という値を入力する場合、1 を入力した時点で値の反映が発生します。



DelayedAttributeを設定した場合

次に同じプロパティにDelayedAttributeを設定して同じ操作をしてみます。

プロパティに 12 を入力してエンターやフォーカス外しを行って初めて値の反映が発生します。