chris wrote:Celestia draws as many frames per second as it can up to a maximum equal to your refresh rate--at that point, it will idle during the extra time. ... The thing that Celestia should be doing is idling if it detects that it's minimized, and running at a lower priority in the if it's not in the foreground. I'll get to it eventually . . .
Howdy Chris,
As a suggestion, what about adding a Performance option to one of the menus, so the user can set how they want Celestia to function on that machine? The options could include:
* Max Frames Per Second (FPS)
* Idle when not in-focus or not on-top
* Others?
The Max FPS sub-option could contain pre-sets (checkboxes) if that would make programming easier. Folks with slower machines could use lower settings, and fast machines use higher settings. This would at least give the user a way to set it themselves.
The Idle option again gives the user control of CPU usage when Celestia is not the active window (minimized, not in focus, not on top, whatever it's called these days <smile>).
Personally, I have no problem with FPS or CPU usage, or being able to run other programs at the same time because I have a 3.06 GHz processor. My "game" machine has a 1.3 GHz, so Celestia might be a whole lot slower and maybe not run additional programs at the same time very well.
Bottom Line: I'm just suggesting that you give some control over Celestia's use of the CPU to the user, instead of trying to hard-code this or that, which may be good for user X but not so good for user Z.
Cheers for now...
-Don