Jump to content

  • Log In with Google      Sign In   
  • Create Account


Synchronizing actions to interpolated movement


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

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

#1 fjholmstrom   Members   -  Reputation: 172

Like
1Likes
Like

Posted 04 February 2012 - 03:39 AM

I've implemented pretty much the techniques described by valve here: https://developer.valvesoftware.com/wiki/Source_Multiplayer_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?

Sponsor:

#2 hplus0603   Moderators   -  Reputation: 5110

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 };




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS