FPS ???
Lag should not effect fps in any way what so ever because the program still keeps updating bike positions and redrawing the screen *(using previously received data)* while waiting for new data from the server.
Once the new bike positions/speed have been received from the server the client then updates its variables if nessary.
So jgirl's question still has not yet been answered.
I have no idea why the fps should be lower for online games, it should be no different.
Once the new bike positions/speed have been received from the server the client then updates its variables if nessary.
So jgirl's question still has not yet been answered.
I have no idea why the fps should be lower for online games, it should be no different.
Zapple was actually close to the reason, near as I can tell.
When you're playing a local game, there's no net connection from Armagetron at all. Just making a net connection takes some CPU time.
Then, as more players get added to the server, the game itself gets more objects to draw/track/animate, and that means more CPU time.
More CPU time = fewer FPS
3d acceleration only goes so far, you still have to figure out where everybody is in the arena before sending it to the 3d accelerated video card.
I would wager, though, that the socket connection is the biggest part of the drop in FPS, because of the CPU time it sucks away.
When you're playing a local game, there's no net connection from Armagetron at all. Just making a net connection takes some CPU time.
Then, as more players get added to the server, the game itself gets more objects to draw/track/animate, and that means more CPU time.
More CPU time = fewer FPS
3d acceleration only goes so far, you still have to figure out where everybody is in the arena before sending it to the 3d accelerated video card.

I would wager, though, that the socket connection is the biggest part of the drop in FPS, because of the CPU time it sucks away.
- iceman
- Reverse Adjust Outside Corner Grinder
- Posts: 2448
- Joined: Fri Jan 09, 2004 9:54 am
- Location: Yorkshire, England. Quote: Its the fumes, they make one want to play
- Contact:
i also have the same problem with online games being much lower fps than local games
and the small amount of data that has to be processed from the server (and we are talking real small) shouldnt effect the speed by as much as it does
there must be something really wrong with the code to run that slowly (did microsoft write that part of the program ?
)
it looks like this section of the program needs some heavy optimizing
and the small amount of data that has to be processed from the server (and we are talking real small) shouldnt effect the speed by as much as it does
there must be something really wrong with the code to run that slowly (did microsoft write that part of the program ?

it looks like this section of the program needs some heavy optimizing
lag and fps.
Ive noticed the same on linux also, although linux generally gets higher framerates than windows, lag greatly effects my fps, i get anywhere from 400 to 600 on local games, and between 150-350 on net games, depending on the amount of lag.
Also of note, if someone feels like finding the bottleneck in the windows version thats holdin back the fps im sure youll be worshipped as a god by many.
Also of note, if someone feels like finding the bottleneck in the windows version thats holdin back the fps im sure youll be worshipped as a god by many.
- Tank Program
- Forum & Project Admin, PhD
- Posts: 6712
- Joined: Thu Dec 18, 2003 7:03 pm
refresh rate
You know, that sounds just about right, and iceman, its multiples and divisables of your refresh rate i would guarentee, just to keep everything in sync.
First off, I don't know if this is true about Armagetron specifically...iceman wrote: and the small amount of data that has to be processed from the server (and we are talking real small) shouldnt effect the speed by as much as it does
Net connections are basically a matter of opening a socket, and sockets require a certain amount of overhead. When you open the socket, you are immediately and uncontrollably depending on several layers worth of kernel and a certain amount of overhead. Most programs (I'd say all but I have to leave room to be right) slow down when they open a socket to anything, including other local applications. The only program I know that is an exception to this is X, but it could just be that UNIX domain sockets are really fast comparatively speaking. This is the only real difference between an internet game and a local game, so it's the most logical reason, assuming the rest of the code is properly organized and compartmentalized and so forth. Bottom line: sockets have overhead, and it *will* affect the rest of the game no matter what.
Solution? The only solution I know of is to run the actual net connection in a different process and connect to that process. I'm not entirely certain that running the net connection in a different thread would solve the problem.
Now, I could be completely wrong about it, but I can also dig up citations to back it up, so take it for what it's worth, whatever that is.

- iceman
- Reverse Adjust Outside Corner Grinder
- Posts: 2448
- Joined: Fri Jan 09, 2004 9:54 am
- Location: Yorkshire, England. Quote: Its the fumes, they make one want to play
- Contact:
question:
when a slow pc is really busy drawing the graphics does the function that receives the server data and calculates the bike positions still run or is the program linear ie each function runs in a list and has to wait for the previous funtion to finish ?
linear would really suck and totally mess up the ping
when a slow pc is really busy drawing the graphics does the function that receives the server data and calculates the bike positions still run or is the program linear ie each function runs in a list and has to wait for the previous funtion to finish ?
linear would really suck and totally mess up the ping