I've noticed that the maximum framerate is tied directly to the monitor refresh rate, at least on my system. Even if all I do is call the Present method, my frame rate ends up being 60. However, if I cover the game window with another window, the frame
rate moves up to it's theoretical maximum (as shown in the window title on the taskbar).
This means the Present method is "eating" any extra time between frames while waiting for the monitor to refresh. Is there any way to get this time back for background housekeeping, like unloading defunct objects or preloading new stuff?
Or since housekeeping is necessary regardless of client speed, the "extra" time could be used to provide as much extra eye candy as can be rendered before the next render loop has to start...