【Unity】インスペクタを拡張する属性
属性とは? Unityではなく、C#の機能として属性(Attribute)というものがあります。
Attribute クラス (System) カスタム属性の基本クラスを表します。 learn.microsoft.com 属性とはクラス、メンバー(フィールドやメソッドなど)に追加の情報を与えるためのものです。
例えば、以下の様なコードに含まれる[SerializeField]の部分です。
private void Player : MonoBehaviour { [SerializeField] private int _hp; } 通常、private変数はシリアライズされずインスペクタ上にも表示されません。
[SerializeField] が指定されている場合は、インスペクタ上に表示され、編集した結果もシリアライズされるため、
シーンやプレハブ中で保持されるようになります。