シリアライズされた値を失わないようにフィールド名のリネームをしたい場合にこの属性を使用します。
このようなクラスを持っている場合:
using UnityEngine; public class MyClass : MonoBehaviour { public string myValue; }
そして、既にMyClassのインスタンスに割り当てられたデータを失うことなくmyValueをカプセル化したプロパティを作成したいとします。この属性を使用するとそれを達成することが出来ます:
using UnityEngine; using UnityEngine.Serialization; public class MyClass : MonoBehaviour { [FormerlySerializedAs("myValue")] private string m_MyValue; public string myValue { get { return m_MyValue; } set { m_MyValue = value; } } }
oldName | リネーム前のフィールドの名前 |
FormerlySerializedAsAttribute |