Jump to content



Synchronizing actions to interpolated movement

  • You cannot reply to this topic
1 reply to this topic

#1 fjholmstrom   Members   -  Reputation: 102

Like
1Likes
Like

Posted 04 February 2012 - 03:39 AM

I've implemented pretty much the techniques described by valve here: https://developer.va...ayer_Networking It all works on both the server and client(s). With one little issue, or rather, a concern/question:

When I interpolate the movement of an entity between two points I already know, this causes a blanked 100ms rendering lag on the client (I receive state updates at 20Hz) of remote entities. This is fine, but when a remote entity does some action (say shooting or jumping), which needs to be synchronized to movement - do I not also need to delay these events by the same amount when I receive them from the server, so everything lines up nicely?

Ad:

#2 hplus0603   Moderators   -  Reputation: 1805

Like
0Likes
Like

Posted 06 February 2012 - 03:53 PM

Yes, you need to display object position and object actions at the same (consistent) time stamp. If they are somehow sent or simulated separately, then you'll get weird-looking artifacts unless you re-align them.

In this model, typically, you'll enter everything a remote entity does into a single receive queue on the viewing client, time-stamped, and play it back in order with some fixed delay based on your RTT to the server.
enum Bool { True, False, FileNotFound };






We are working on generating results for this topic
PARTNERS