How does DirectX's Present work?
I'm still kind of new to programming games in C++ with DirectX. I have this project I'm working on in preparation for my senior project coming soon (I'm in school for Game and Simulation Programming). It's just a simple 3D application with three spheres orbiting around like a solar system. It runs fine, but I'm having problems understanding why I can't get above about 60 frames per second, even when I've removed everything from the rendering loop besides the Present call.
It seems that the Present call itself is slowing down the application. I don't know how Present works in-depth and was just curious if anyone here could fill me in. Is it that Present hangs the application until the display is ready for a presentation? If so, how can I only call Present when it's necessary/appropriate instead of once every render interation? If 60 FPS is totally acceptable (I'm aware of how FPS correlates with monitor refresh rate) and the highest anyone would ever need to go, how is it that mainstream games can report 200 FPS or more? What does that number actually represent?
Any and all input is greatly appreciated. Just a curious, probably ill-equipped student. :o