The online racing simulator
#1 - SamH
MPR Steering Wheel turn interpolation
One of the most visible differences between an SPR and an MPR (apart from the number of participants other than AIs) is the jerkiness of the driver's wheel during playback. I understand the reason why the wheel position gets recorded in this way, but I wonder if it could be adjusted for playback. I'd like to request that the turn of the wheel be interpolated, i.e. smoothed.
i dont want to bump this thread, but dont u hate when nobody answear??
so thats me saying that could be good, will look more natural...
#3 - axus
I'd like that - it would look much better during movies.
+1, I could really use this for the STCC coverage.

It's just 4 bytes extra to store a float of the wheels turning momentum, but could even be done with a single byte (1 byte-128) to compact it further. 10 minute job Scawen !
#5 - joen
Definitely +1
This would be very welcomed while driving also, spectating other players from incar view with a high steer look sensitivity setting currently makes the view rapidly jump left and right which is pretty annoying to watch.
Yarr +1
I'm probably unknowingly agreeing with you here... but I thought it was to do with the amount of packet information being sent to the server? i.e; the client only sends limited amount of information to the server about steering wheel location therefore resulting in less information having to be sent, resulting in less bandwidth needed.

I may be crazy, but when i've hosted a server with local people with good connections and ive had the packets set to '6', the steering seems a lot smoother then most servers. Or maybe it's just my imagination/hope illepall

Definately +1 if there's a way to make it smooth for play back
#9 - Lible
+1
#10 - SamH
Thanks for the bump, guys!

Do you think it's because I used the word "interpolation", and most people looked and said to themselves "interpowhation? ... move along!"

I don't even know if interpolation is the right word in this scenario. For anyone who's still interpowhationing:- in graphics, the computer makes a "best guess" between two pixels, when you increase the resolution of an image. In this situation, the LFS client would make a best guess between packets of multiplayer data. The same thing that ensures that cars drive along smoothly in multiplayer replays.

Becky's idea would make it a much better "guess", providing the LFS client with the missing ingredient. I like that idea! +1
+1 from me too.

It's really hard when you're trying to watch a faster driver to learn the track, and they're jumping all over the place. Especially on autocross servers, where you need to watch other drivers, because you only get a certian number of runs.
The problem with interpolation is that it generates a lag in realtime applications. For a perfectly smooth transition this will be the delay between two packets.

To decrease this lag, some kind of predictive data will have to be sent (or made up from older packets received) so the interpolation can assume the wheel will turn further with a certain speed, and display that assumption. This is probably bad, as wheel motion can't be predicted that well and overshooting would look very weird.

As wheel motion data is not very complex or big, it could be sent separately and more frequently to improve the multiplayer experience.

Interpolating from a saved replay should not be a problem to implement if the current code fits. That would be a great improvement!
#13 - SamH
Quote from wollschaf :some kind of predictive data will have to be sent (or made up from older packets received) so the interpolation can assume the wheel will turn further with a certain speed, and display that assumption.

That's what Becky is suggesting. Identifying the directional velocity of a wheel in a packet, and knowing when the next packet of information is due to be available, would provide sufficient data to introduce a mechanism for smoothing which is currently non-existent.
Quote from wollschaf :This is probably bad, as wheel motion can't be predicted that well and overshooting would look very weird.

It couldn't look worse than it does at present, where there's no motion at all. With 6 packets per second (I don't know if that's how many updates to the wheel angle that come, all of our servers are set to /pps=6) it couldn't go that far out, could it? It would at least be in the right vicinity, more than it is now.
Quote from wollschaf :As wheel motion data is not very complex or big, it could be sent separately and more frequently to improve the multiplayer experience.

Could be, would do!
Quote from wollschaf :Interpolating from a saved replay should not be a problem to implement if the current code fits. That would be a great improvement!

Definitely!

For me, I'm particularly focused on MPRs because those are where I get the movie-making material from. I'd LIKE to see it live, using directional velocity or some such mechanism to direct the wheel's angle between packets, but it's really in the MPR that I would personally most benefit from this.
+1 here too, (guess that was just a matter of time till suggestion)

regards
Quote from wollschaf :The problem with interpolation is that it generates a lag in realtime applications.

Or, there could be an option to specify how much interpolation to use. So, you could have like 2x interpolation, up to like 10x. This would only work for linear interpolation. So, with my suggestion, it would just calculate the distance between the two rotations. So, speed wouldnt matter. THis would be the simplest way. The reason replays aren't that large is because the physics are being calculated in LFS, they are not recorded in the replay.
Only is done good, +1
Don't want crappy replays when wheel is going on right and car going on left for lag
+1. I'd also like to see a similar thing for car movement. If the game could take all the packets it has, and calculate the trajectory during the miliseconds it has no information, it could smooth out the movement. Er.. I think. I'm no coder, though :P
Quote from MAGGOT :+1. I'd also like to see a similar thing for car movement.

Yeah. Really annoying when the jerky movement spoils all the suspension movement etc. in the car.

FGED GREDG RDFGDR GSFDG