Download

Network: Replication Cost and Relevancy

I have to replicate a huge amount of stuff and I wonder what’s the best approach. Especially I can’t decide whether to use Replicated variables, Repnotify variables or replicate everything through functions.

According to this: https://answers.unrealengine.com/que…fy-costly.html* replicated variables and especially rep notified variables are very bad for performance.*

I’ve done my own test on this case and my results are rather confusing.
With 4 Players, 5500 Actors in PIE (UE 4.12.5).

Clean Actor, no replicated variables: 45MS Impact on Gamethread for the server
Clean actor, 12 (4x bool, 4x float,4x static mesh) replicated variables: ~47MS
Clean Actor, 12 rep notified variables: ~47MS

I’m quite confused that

  1. theres no difference between rep notify and simple replicated variables
  2. Simple Actor replication has such a heavy impact
  3. Variable replication has such a low impact (66.000 replicated variables only add 2MS - Replicating 1 Actor is as expensive as replicating 265 variables)

Considering Actor replication is that expensive, it seems completely unnecessary to care about variable replication, because variable replication only works if the actor is replicated. I have done quite some more tests with different settings like lower net update rates etc. but the discrepancy between actor and variable replication stays the same.

I’d love to get some insight as of why things are as they are.

That is because 3d transform replication is naturally expensive… also there’s physics and AI and some more internal stuff in place when you replicate actors.

Ok, so
**2 = Actors are just that heavy to replicate.

**I’m still uncertain about 1 and 3. From my results and taking that Actors are just that expensive, it would mean that I don’t have to worry about Variable replication (whether with notify or not) at all.

But from the available Information I found on answerhub and documentation I feel like there might be something wrong with my results. Can you confirm that it’s no issue to have 50.000 rep/notified variables unless they are modified in short intervals?