You can use this attribute to want to rename a field wihout losing its serialized value.
Supose you have a class like this:
using UnityEngine; public class MyClass : MonoBehaviour { public string myValue; }
And you would like to create a property to encapsulate myValue without loosing any data already assigned to instances of MyClass. You can achieve that by using this attribute:
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 | The name of the field before the rename. |
FormerlySerializedAsAttribute |