When there are multiple displays, their refresh rate can be different. Lets assume one window on 60Hz display and other is on 30Hz, and also vsync is on. How would SDL_AppIterate() be called? Once and at 60Hz? Once and at 30 Hz? Twice for each display?
1 Answer
From the SDL_AppIterate() header documentation block, emphasis mine:
On some platforms, this function will be called at the refresh rate of the display (which might change during the life of your app!). There are no promises made about what frequency this function might run at. You should use SDL's timer functions if you need to see how much time has passed since the last iteration.