Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I wonder why not prevent lags by only appying advanced optional graphics stuff when the FPS are high at time. So The game could use simpler or even no shaders and skip decorative models some time.

It there an approach of dynamically calculating more or less each frame for higher FPS yet?

Is there a project using this approach yet?

share|improve this question
Sounds like an amazing idea, essentially quite simple though, have different versions of shader techniques. The only this is how to you avoid this from becoming disorientating? Walk into a new area and BOOM suddenly you are seeing technicolor; I would personally find this highly uncomfortable and would wonder if I had walked into a sequence or something. – Jonathan Dickinson Aug 24 '12 at 11:21
The next step would be to implementing kind of fading between different shaders. – danijar Aug 24 '12 at 11:30
Fading requires interpolation, which means you will have to render with both techniques for an even greater performance penalty. There's very few techniques which are adaptive which is the reason for why we're not seeing this, LODing geometric complexity simply a lot easier since that's just data. – Ylisar Aug 24 '12 at 12:05
Of course this wouldn't be a solution. But I believe there are other ways of fading. (e.g. smoothly decreace the number of particles) – danijar Aug 24 '12 at 14:31
I like the particles idea, you could really get clever with this. However, it looks like you have the smarts that you need - if you really want to try this out I doubt you need our help ;). – Jonathan Dickinson Aug 24 '12 at 19:09
up vote 4 down vote accepted

You might find interesting.

Off the top of my head, there's a couple of things that will make automatically scaling somewhat complicated though:

  • Measuring FPS isn't enough. At the very least you need to know if the bottleneck is the CPU or the GPU so you can make a good choice as to what changes to make to the detail settings. Even if you know the GPU is the bottleneck, the changes you want to make may depend on which part of the pipeline is the issue (memory bandwidth, poly count, pixel shaders, ROPs, etc).

  • You probably don't want to oscillate between two levels of detail rapidly, so you need some damping in the system to keep it under control. However, damping the detail reduction will mean the player can still see low frame rates some of the time.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.