Sending large array via RPC breaks other actors replication

Hi. I have a problem with large data replication. I generate my level procedurally in runtime (with texture, with player’s map, foliage etc) and I want to replicate it to client.
I started from player’s map texture. It is just an array of FLinearColor 800x800 = 10Mb. Yes, I can compress it, but I need to learn large data transfer.
I have already read several articles about array replication. Of course, simple setting Replicated array not working. I created solution as described in https://vorixo.github.io/devtricks/data-stream/.
It works fine: client requests transfer, server sends 8kb parts and client finally constructs texture.
But when transfer starts - server’s ACharacter and some other actors stop their repliction (for example, I don’t see server’s character movement on client). I see warnings in log:

LogNetPlayerMovement: Warning: ServerMove: TimeStamp expired: 5.593603, CurrentTimeStamp: 6.666228, Character: BP_Player_C_1

It may be fixed by reducing part size to 512b, but transfer will take much time. I want to utilize at least 10Mbit/sec.
How to increase max bandwidth?

https://forums.unrealengine.com/t/network-bandwith-limit/473075
This tip helped. I increased all values to 10000000 and now don’t see problem. Will continue testing.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.