PersistAttribute
Marks a NetworkVariable<T> field as part of the entity's saved state.
Nebula · Packages/com.1by3.nebula/Runtime/Persistence/PersistAttribute.cs[AttributeUsage(AttributeTargets.Field, Inherited = true, AllowMultiple = false)]
public sealed class PersistAttribute : AttributeMarks a NetworkVariable<T> field as part of the entity's saved state. The variable is written into the persistence blob under its discovered name ("<BehaviourTypeName>.<FieldName>") and assigning it also schedules the entity's next checkpoint, so a saved value is never more than a checkpoint behind what the simulation holds.
public sealed class Door : NetworkBehaviour
{
[Persist] public NetworkVariable<bool> IsOpen = new NetworkVariable<bool>();
}The entity itself opts in by carrying a PersistentEntity; without one, a PersistAttribute has no effect.
NebulaPersistence
The worker's persistence service: it checkpoints every authoritative entity carrying a PersistentEntity into an IPersistenceStore, and brings those entities back when this worker gains the lease of a container they were saved in.
PersistedEntityRecord
One persisted entity as the store holds it: enough to bring the entity back on any worker (prefab or scene object, container and pose, authority epoch) plus the opaque state blob the entity itself wrote (PersistentStateCodec: opted-in Ne...