Struct SnapshotDynamicBuffersHelper
Helper class for managing ghost buffers data. Internal use only.
Inherited Members
Namespace: Unity.Netcode
Assembly: Unity.NetCode.dll
Syntax
[MovedFrom(true, "Unity.NetCode", null, null)]
public struct SnapshotDynamicBuffersHelper
Methods
CalculateBufferCapacity(uint, out uint)
Return the history buffer capacity and the resulting size of each history buffer slot necessary to store the given dynamic data size.
Declaration
[Obsolete("This overload assumes the global default history size, but snapshot buffers are sized per ghost type. Pass the per-type size (e.g. SnapshotData.SnapshotHistorySize or GhostCollectionPrefabSerializer.SnapshotHistorySize) instead.", false)]
public static uint CalculateBufferCapacity(uint dynamicDataSize, out uint slotSize)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | dynamicDataSize | Dynamic data size |
| uint | slotSize | Slot size |
Returns
| Type | Description |
|---|---|
| uint | History buffer capacity |
CalculateBufferCapacity(uint, out uint, int)
Return the history buffer capacity and the resulting size of each history buffer slot necessary to store the given dynamic data size, for the given per-ghost-type history size.
Declaration
public static uint CalculateBufferCapacity(uint dynamicDataSize, out uint slotSize, int snapshotHistorySize)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | dynamicDataSize | Dynamic data size |
| uint | slotSize | Slot size |
| int | snapshotHistorySize | The number of history slots for this ghost type (see SnapshotHistorySize). |
Returns
| Type | Description |
|---|---|
| uint | History buffer capacity |
GetDynamicDataCapacity(uint, int)
Return the currently available space (masks + buffer data) available in each slot.
Declaration
[Obsolete("This overload assumes the global default history size, but snapshot buffers are sized per ghost type. Pass the per-type size (e.g. SnapshotData.SnapshotHistorySize or GhostCollectionPrefabSerializer.SnapshotHistorySize) instead.", false)]
public static uint GetDynamicDataCapacity(uint headerSize, int length)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | headerSize | Header size |
| int | length | Length |
Returns
| Type | Description |
|---|---|
| uint | The currently available space (masks + buffer data) available in each slot |
GetDynamicDataCapacity(uint, int, int)
Return the currently available space (masks + buffer data) available in each slot for the given per-ghost-type history size.
Declaration
public static uint GetDynamicDataCapacity(uint headerSize, int length, int snapshotHistorySize)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | headerSize | Header size |
| int | length | Length |
| int | snapshotHistorySize | The number of history slots for this ghost type (see SnapshotHistorySize). |
Returns
| Type | Description |
|---|---|
| uint | The currently available space (masks + buffer data) available in each slot |
GetDynamicDataChangeMaskSize(int, int)
Compute the size of the bitmask for the given number of elements and mask bits. The size is aligned to 16 bytes.
Declaration
public static int GetDynamicDataChangeMaskSize(int changeMaskBits, int numElements)
Parameters
| Type | Name | Description |
|---|---|---|
| int | changeMaskBits | Change mask bits |
| int | numElements | Number of elements |
Returns
| Type | Description |
|---|---|
| int | Size of bitmask |
GetDynamicDataPtr(byte*, int, int)
Retrieve the dynamic buffer history slot pointer
Declaration
[Obsolete("This overload assumes the global default history size, but snapshot buffers are sized per ghost type. Pass the per-type size (e.g. SnapshotData.SnapshotHistorySize or GhostCollectionPrefabSerializer.SnapshotHistorySize) instead.", false)]
public static byte* GetDynamicDataPtr(byte* dynamicDataBuffer, int historyPosition, int bufferLength)
Parameters
| Type | Name | Description |
|---|---|---|
| byte* | dynamicDataBuffer | Dynamic data buffer |
| int | historyPosition | history position in buffer |
| int | bufferLength | Length of buffer |
Returns
| Type | Description |
|---|---|
| byte* | pointer to dynamic buffer |
Exceptions
| Type | Condition |
|---|---|
| IndexOutOfRangeException | Thrown if the position is invalid |
| InvalidOperationException | Thrown if bufferlength is less than headersize |
GetDynamicDataPtr(byte*, int, int, int)
Retrieve the dynamic buffer history slot pointer for the given per-ghost-type history size.
Declaration
public static byte* GetDynamicDataPtr(byte* dynamicDataBuffer, int historyPosition, int bufferLength, int snapshotHistorySize)
Parameters
| Type | Name | Description |
|---|---|---|
| byte* | dynamicDataBuffer | Dynamic data buffer |
| int | historyPosition | history position in buffer |
| int | bufferLength | Length of buffer |
| int | snapshotHistorySize | The number of history slots for this ghost type (see SnapshotHistorySize). |
Returns
| Type | Description |
|---|---|
| byte* | pointer to dynamic buffer |
Exceptions
| Type | Condition |
|---|---|
| IndexOutOfRangeException | Thrown if the position is invalid |
| InvalidOperationException | Thrown if bufferlength is less than headersize |
GetHeaderSize()
Get the size of the header at the beginning of the dynamic snapshot buffer. The size of the header is constant.
Declaration
[Obsolete("This overload assumes the global default history size, but snapshot buffers are sized per ghost type. Pass the per-type size (e.g. SnapshotData.SnapshotHistorySize or GhostCollectionPrefabSerializer.SnapshotHistorySize) instead.", false)]
public static uint GetHeaderSize()
Returns
| Type | Description |
|---|---|
| uint | Size of the header at the beginning of the dynamic snapshot buffer |
GetHeaderSize(int)
Get the size of the header at the beginning of the dynamic snapshot buffer for the given per-ghost-type history size.
Declaration
public static uint GetHeaderSize(int snapshotHistorySize)
Parameters
| Type | Name | Description |
|---|---|---|
| int | snapshotHistorySize | The number of history slots for this ghost type (see SnapshotHistorySize). |
Returns
| Type | Description |
|---|---|
| uint | Size of the header at the beginning of the dynamic snapshot buffer |