Advertisement

Automatic performance settings

Started by August 30, 2009 12:58 AM
5 comments, last by LockePick 15 years, 2 months ago
I couldn't think of a clear title. Basically I was wondering if (and if not, why not) games could/should use FPS (which the game can measure) in automatically updating the performance settings. For instance, if the FPS drops below X, the game could lower the detail and such, and once the performance increases, the detail can be increased. I was thinking of implementing that for my game (though my game is not very performance heavy, most of the slow-ness is due to my own fault of programming it poorly).
Generally in most games I can think of when there is a settings change for the graphics there's a flicker and a little while where everything is reloaded, different resolution textures are unloaded and loaded etc. It seems like it would cause a lot of laggy glitching if it were done automatically and (presumably) in real-time, potentially ruining the game for a time.

Or is this not what you were referring to? Seems like doing this would create a constantly moving target. Also possible is that one change on one system would not have the same impact on another system depending on the configuration? Just a thought.
Advertisement
it takes work to automatically change video settings. Loads of stuff have to be reloaded, so it's quite impractical. However, some of the things in game have adaptive resolution depending on current performance. Like model level-of-details and so on.

Everything is better with Metal.

There are three reasons for not doing this:

1) See above posts.

2) Some people care more about quality than speed, and vice versa. Most gamers apparently think 1-30 FPS is enough for everybody and don't understand why others complain about unstable, low FPS numbers. They'll probably be annoyed if you suddenly start lowering quality trying to get it up to a more reasonable 60-100 FPS. This is especially true for people that just bought the latest, greatest cryo-cooled centi-gpu card and don't understand why it doesn't magically make things faster (often, new cards only offer slight improvement to old programs - the real improvement is support for newer more comprehensive APIs that enable more efficient algorithms and implementations)

3) If your game is graphically intensive, it might be selected for use in benchmarks by various computer hardware sites. It can only be used for such a purpose if the settings can be exactly reproduced across systems.

A better way to implement that kind of thing would be to have it collect the information while you're playing, and then have a menu selection under 'graphics settings' called something like 'profile-based suggestions' and it could say, for example:
Frame rate drops significantly in scenes with multiple specular highlights. Consider turning "Specular Highlight Quality" to "3" or to "Dynamic".
"Walk not the trodden path, for it has borne it's burden." -John, Flying Monk
Thanks a lot guys! I never have gone deep into 3d stuff, so I wasn't aware of the problems you guys have suggested to my idea. I definitely think the last option of having a suggestion would be ideal. When I was first learning about games, I often had no idea what things did what, and actually how bad (or good by disabling it) it was for my computer.

automatic settings in games are often based on your hardware. Shader support, processor frequency, video card core type, ram available, video ram available, ect... But not at runtime.

Everything is better with Metal.

Advertisement
Another problem with automatic detail adjustment is that if you lower the settings and the framerate increases... then the settings will get adjusted back up again because the system thinks performance is great now. So in order to avoid the graphics popping back and forth between levels repeatedly you have to have a very large window where the detail doesn't change, and at that point you really aren't helping very much because only extreme slowdowns will make the system kick in.

So basically it would need to be a very smart, sophisticated system that is tracking the individual performance of each setting and knows how to adjust them at times where there won't be noticeable pop-in. Lots of work, not worth it, benchmarkers will hate you, hardcore gamers will hate you, casual gamers who don't mind low framerates will hate you, people who notice pop-in will hate you, etc.
_______________________________________Pixelante Game Studios - Fowl Language

This topic is closed to new replies.

Advertisement