Page 1 of 1

improved fps

Posted: 03 Apr 2006, 23:06
by cyclerboy
im not sure if many people know this but it could help the performance of fps. ta spring by default uses vsync and there is no option(im aware of) to turn it off. before i knew this i got around 40fps with full settings but know with vsync disabled in the video card controls i get around 70 fps with the same settings. im not sure if this is with nvidia cards only or what but it could help slower computers run better and good computers to run even better settings.

Posted: 03 Apr 2006, 23:28
by Sheekel
For some, this probably wont work. Im not sure if spring uses it for default or not, but it seems that by going into the graphics card settings and changing the application profile and whatnot for Spring, you can disable vsync and get a big fps boost with little or no graphical anomalies, except when scrolling terrain at high speeds.

Posted: 04 Apr 2006, 09:03
by SwiftSpear
It used to be that old ATI cards could handle vsync being off without problems but nvidia cards required it on... I don't think there's that much of a difference any more. Try it off first and if you get graphical enomalies then turn it back on. Generally speaking you get higher FPS with vsync off.

Posted: 05 Apr 2006, 02:24
by Sheekel
I cant seem to find a way to turn it off, perhaps an option in the Spring Settings could be added?

Posted: 05 Apr 2006, 06:21
by cyclerboy
i didnt notivce any anomalies with vsynch off and i have an nvidia. maybe it depends on the card, i have a 6800gt

Posted: 05 Apr 2006, 11:30
by Michilus_nimbus
WOW, highly improved performance over here with vsync disabled! I've got a Nvidia GeForce FX go5350, and I'm getting around 80 fps now*! I haven't noticed anything weird too, so I'm happy right now.

*that is with shadows disabled, and not looking at reflective water, of course;

Posted: 05 Apr 2006, 14:20
by Dr.InfernO
cool! I also have a 6800GT, so I'll try it when I'm back from work.

Posted: 05 Apr 2006, 19:04
by Sheekel
We need an option in the settings!

Posted: 05 Apr 2006, 19:26
by Flare
It would be nice to have an antialiasing option and anisotropic option in there too, but it's easy to change the settings with the graphics card so it't not that important.

Posted: 05 Apr 2006, 20:50
by Tobi
Full screen antialiasing setting (FSAA and FSAALevel in registry) is already supported by spring itself since 0.70b1. It's just that someone needs to code it into settings.exe. The same applies to DepthBufferBits.

Turning VSync on/off isn't supported by the engine itself, so that takes slightly more work. Also, setting refresh rate isn't supported anymore (and probably won't be unless it's added to SDL), so that should be removed from settngs.exe

Posted: 05 Apr 2006, 21:00
by AF
Adding them in is trivial, you'd be surprised how easy it can be, only I aint heading into the settings prog, no time to look through code at the moment....

Posted: 05 Apr 2006, 21:39
by Tobi
I assume it's quite easy yes if you've got the right tools set up, which I probably haven't. So I'll leave it to someone who has.

Posted: 05 Apr 2006, 23:13
by Sheekel
how difficult would it be to add to the settings page? I know my way around C++ okay so i might give it a try

Posted: 06 Apr 2006, 09:06
by Tobi
You probably want the UI designer (assuming it's been made with that) of MSVC, make a new checkbox, give it the right name, then copy/paste same code of another setting, change the names, compile, test, submit patch.

E: but note that I've never even looked at the code so I'm just guessing here.

Posted: 06 Apr 2006, 16:07
by AF
It's as tobi said, only it's simpler than ti sounds

Posted: 06 Apr 2006, 17:50
by Sheekel
I thought it would be more complex than that. How much code is used to implement Vsync? Is it just

Vsync = 1;

haha, i wouldnt have thought so. I figured i would have to link the code between that and the code of the RTSsettings. But then again...ive been using C++ for about 3 months.

:?

Posted: 06 Apr 2006, 18:16
by jcnossen
Problem is, you can't set VSync in OpenGL (whereas you can in d3d)
Going into the driver settings is the only way.

EDIT:
There is WGL_EXT_swap_control, so I'll try and use that