View Issue Details

IDProjectCategoryView StatusLast Update
0003119Multi Theft Auto : San AndreasSynchronizationpublic2009-09-29 21:58
ReporterChrML Assigned Toccw  
Status resolvedResolutionfixed 
Target Version1.0.1Fixed in Version1.0.1 
Summary0003119: Improve player/vehicle interpolation and compensation

Our current player/vehicle interpolation is framerate dependent which means that it behaves differently with different framerates, while it should be time-based.

Time-based interpolation also opens up the possibility of making ping compensation work again (currently it doesn't really work).

TagsNo tags attached.


parent of 0004780 closedJax Modify the interpolator to only interpolate the error, and not the full position 
has duplicate 0003118 closed Make the vehicle and player interpolation time dependent 
related to 0004875 resolvedccw Vehicles lag with high player counts 



2008-01-10 16:04

administrator   ~~0007092

This is because it still uses linear interpolation while we use a different way of interpolating in the player class. First it needs to be time based, then the interpolator needs to run on the local player too saving records on the local player so we know where the remote player saw us when he fired.


2009-03-12 13:59

manager   ~~0008522

What I saw is that it keeps a list of the recent states and when somebody shoots you it warps you back to the exact position where you was when he actually shot you. Is that even interpolating or just state changing?


2009-06-29 21:18

manager   ~~0009821

This is also causing peds and vehicles to be under the ground. It's top priority and should be fixed for 1.0.


2009-06-29 21:42

administrator   ~~0009822

Last edited: 2009-06-30 22:13

As you say ryden, it could do with a name change to distinguish it from the net smoothing position interpolation.

I mean that there is CClienPed::Interpolate(), for smoothing remote players, and also there is an CCInterpolator class, which is used to store local player position history for ping compensation. The CCInterpolator class could be renamed to describe what it does, rather than how it does it.
But it's not that important.


2009-06-30 22:14

manager   ~~0009834



2009-09-16 00:13

administrator   ~~0010494

Fixed in

Issue History

Date Modified Username Field Change