Best place to ReConstruct ClientSide Non-Replicated ComponentData

Hello everyone,

In some scenarios, clients may need to rebuild certain non-replicated ComponentDatas or Fields when a Ghost is initially received from the Server. This is especially relevant for situations where ghost components contain extensive data, like BlobAssetReferences, and have their GhostField configured with SendData = false. The question arises: At which point in the Ghost’s lifecycle is it ideal to identify that a new Ghost with a specific component has been spawned and that its predefined components have been updated to the latest received snapshot?
From my understanding of the documentation, the GhostSpawnSystemGroup handles the spawning of Ghosts, and the NetworkReceiveSystemGroup takes care of updating their associated data. However, it remains unclear where exactly the non replicated data should be reconstructed to ensure its availability within the same frame.

We have an example for client-side only data recording that work with prediction (it restore when new data is received) in the Netcode for Entities samples here:

1 Like