Struct NetworkStreamSnapshotTargetSize
A per-connection component, which is used by the GhostSendSystem (on the server) to force a non-default packet size for snapshots. Must be added to the NetworkConnection entity for a connection, by your game logic.
Implements
Inherited Members
Namespace: Unity.NetCode
Assembly: Unity.NetCode.dll
Syntax
public struct NetworkStreamSnapshotTargetSize : IComponentData, IQueryTypeParameter
Remarks
Helps enforce a specific KBPS target. For example: A value of 416 bytes * 60hz (via SimulationTickRate) = ~200kbit/s. Note, however, that this:
- Does not include or affect RPCs, commands, control messages, or UDP header overhead.
- Does include UTP packet header overhead.
Fields
Value
The desired packet size to use for the snapshot. By default, the packet size is the Unity.Networking.Transport.NetworkParameterConstants.MaxMessageSize minus some headers. It is possible to specify a packet size larger than a single Unity.Networking.Transport.NetworkParameterConstants.MaxMessageSize, in which case the snapshot data is sent using a pipeline that support fragmentation (see unreliableFragmentedPipeline. The upper bound limit for this value is payload capacity of the fragmentation pipeline (see Unity.Networking.Transport.Utilities.FragmentationUtility).
Declaration
public int Value
Field Value
Type | Description |
---|---|
int |
Remarks
There is a minimum snapshot size, which ensures that some new and destroyed entities get replicated, and ensures that at least one ghost is replicated in every snapshot. See GhostChunkSerializer for this behaviour.