docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Interface IGhostSerializer

    Interface that expose a raw, unsafe interface to copy all the component ghost fields to the snapshot buffer. It is mostly for internal use by code-gen and should not be used direcly nor implemented by user code.

    Namespace: Unity.NetCode
    Assembly: Unity.NetCode.dll
    Syntax
    public interface IGhostSerializer

    Properties

    ChangeMaskSizeInBits

    The number of bits necessary for change mask

    Declaration
    int ChangeMaskSizeInBits { get; }
    Property Value
    Type Description
    int

    HasGhostFields

    True if the serialized component has some serialized fields.

    Declaration
    bool HasGhostFields { get; }
    Property Value
    Type Description
    bool

    SizeInSnapshot

    The size of the serialized data in the snapshot buffer.

    Declaration
    int SizeInSnapshot { get; }
    Property Value
    Type Description
    int

    Methods

    CalculateChangeMask(IntPtr, IntPtr, IntPtr, int)

    Compute the change mask for the snapshot in respect to the given baseline

    Declaration
    void CalculateChangeMask(IntPtr snapshot, IntPtr baseline, IntPtr changeMaskData, int startOffset)
    Parameters
    Type Name Description
    IntPtr snapshot
    IntPtr baseline
    IntPtr changeMaskData
    int startOffset

    CopyFromSnapshot(in GhostDeserializerState, IntPtr, float, float, IntPtr, IntPtr)

    Copy/Convert the snapshot to component. Perform interpolation if necessary.

    Declaration
    void CopyFromSnapshot(in GhostDeserializerState serializerState, IntPtr component, float snapshotInterpolationFactor, float snapshotInterpolationFactorRaw, IntPtr snapshotBefore, IntPtr snapshotAfter)
    Parameters
    Type Name Description
    GhostDeserializerState serializerState
    IntPtr component
    float snapshotInterpolationFactor
    float snapshotInterpolationFactorRaw
    IntPtr snapshotBefore
    IntPtr snapshotAfter

    CopyToSnapshot(in GhostSerializerState, IntPtr, IntPtr)

    Copy/Convert the component data to the snapshot.

    Declaration
    void CopyToSnapshot(in GhostSerializerState serializerState, IntPtr snapshot, IntPtr component)
    Parameters
    Type Name Description
    GhostSerializerState serializerState
    IntPtr snapshot
    IntPtr component

    Deserialize(ref DataStreamReader, in StreamCompressionModel, IntPtr, int, IntPtr, IntPtr)

    Read the data from the stream into the snapshot data.

    Declaration
    void Deserialize(ref DataStreamReader reader, in StreamCompressionModel compressionModel, IntPtr changeMask, int startOffset, IntPtr snapshot, IntPtr baseline)
    Parameters
    Type Name Description
    DataStreamReader reader
    StreamCompressionModel compressionModel
    IntPtr changeMask
    int startOffset
    IntPtr snapshot
    IntPtr baseline

    PredictDelta(IntPtr, IntPtr, IntPtr, ref GhostDeltaPredictor)

    Calculate the predicted snapshot from the two baseline

    Declaration
    void PredictDelta(IntPtr snapshotData, IntPtr baseline1Data, IntPtr baseline2Data, ref GhostDeltaPredictor predictor)
    Parameters
    Type Name Description
    IntPtr snapshotData
    IntPtr baseline1Data
    IntPtr baseline2Data
    GhostDeltaPredictor predictor

    ReportPredictionErrors(IntPtr, IntPtr, IntPtr, int)

    Calculate the prediction error for this component.

    Declaration
    void ReportPredictionErrors(IntPtr component, IntPtr backup, IntPtr errorsList, int errorsCount)
    Parameters
    Type Name Description
    IntPtr component
    IntPtr backup
    IntPtr errorsList
    int errorsCount

    RestoreFromBackup(IntPtr, IntPtr)

    Restore the component data from the prediction backup buffer. Only serialised fields are restored.

    Declaration
    void RestoreFromBackup(IntPtr component, IntPtr backup)
    Parameters
    Type Name Description
    IntPtr component
    IntPtr backup

    Serialize(IntPtr, IntPtr, IntPtr, int, ref DataStreamWriter, in StreamCompressionModel)

    Serialise the snapshot dato to the based on the calculated changemask. Expecte the changemask bits be all already set.

    Declaration
    void Serialize(IntPtr snapshot, IntPtr baseline, IntPtr changeMaskData, int startOffset, ref DataStreamWriter writer, in StreamCompressionModel compressionModel)
    Parameters
    Type Name Description
    IntPtr snapshot
    IntPtr baseline
    IntPtr changeMaskData
    int startOffset
    DataStreamWriter writer
    StreamCompressionModel compressionModel

    SerializeCombined(IntPtr, IntPtr, IntPtr, int, ref DataStreamWriter, in StreamCompressionModel)

    Serialise the snapshot data to the and calculate the current changemask.

    Declaration
    void SerializeCombined(IntPtr snapshot, IntPtr baseline, IntPtr changeMaskData, int startOffset, ref DataStreamWriter writer, in StreamCompressionModel compressionModel)
    Parameters
    Type Name Description
    IntPtr snapshot
    IntPtr baseline
    IntPtr changeMaskData
    int startOffset
    DataStreamWriter writer
    StreamCompressionModel compressionModel

    SerializeWithPredictedBaseline(IntPtr, IntPtr, IntPtr, IntPtr, ref GhostDeltaPredictor, IntPtr, int, ref DataStreamWriter, in StreamCompressionModel)

    Serialise the snapshot dato to the and calculate the current changemask.

    Declaration
    void SerializeWithPredictedBaseline(IntPtr snapshot, IntPtr baseline0, IntPtr baseline1, IntPtr baseline2, ref GhostDeltaPredictor predictor, IntPtr changeMaskData, int startOffset, ref DataStreamWriter writer, in StreamCompressionModel compressionModel)
    Parameters
    Type Name Description
    IntPtr snapshot
    IntPtr baseline0
    IntPtr baseline1
    IntPtr baseline2
    GhostDeltaPredictor predictor
    IntPtr changeMaskData
    int startOffset
    DataStreamWriter writer
    StreamCompressionModel compressionModel
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)