Version: 2023.2

NonSerialized

切换到手册

描述

NonSerialized 属性将变量标记为无法序列化。

Apply to public fields to prevent Unity from serializing the field and displaying it in the Inspector.

Apply to a private field to stop the field being serialized during a hot reload operation, such as after an assembly is recompiled, or during a domain reload operation before entering Play mode.

有关序列化的更多信息,请参阅脚本序列化

Additional resources: HideInInspector, SerializeField.

class Test
{
    // p will not be shown in the Inspector or serialized
    [System.NonSerialized]
    public int p = 5;

// neverSerializeMe will never be serialized, even during an hot reload. [System.NonSerialized] private int neverSerializeMe;

// The backing field for NeverSerializedProperty property will never be serialized, // even during a hot reload [field: System.NonSerialized] public int NeverSerializedProperty { get; set; } }