When trying to render stuff fullscreen using desktop resolution (1920x1080) I encountered a weird issue. When I create the window fullscreen, every 2nd time SDK_renderPresent is called it swaps to a content buffer that has already been overridden but seems for some weird reason still be stored in the renderer. Needless to say Im using only one renderer, and in windowed mode the program shows no such issue.
Im using a loop like this
In handleEvents() mouse and keyboard clicks are processed from the queue to allow me to draw stuff on the screen, in updateScreen() only SDK_renderPresent is called. So when I first tried out fullscreen the screen was flipping madly between the black screen that was created on start by SDK_renderClean and the initial content I created with my own code using only SDK_setRenderDrawColor and SDK_renderDrawPoint.
Im now using a hasChanged flag in order to only call renderPresent when stuff on the screen has actually changed, so at least as long as Im not drawing stuff the picture remains stable and fine. But as soon as I start drawing stuff and renderPresent is called repeatedly to update the screen in short order to get smooth changes, the picture permanently flips between the actual content and an old content. When I draw a rectangle by pressing the mouse button and dragging the opposite corner over the screen I can very clearly see that renderer alternates between two completely different pictures and even my drawing affects both buffers alternatingly so that half the rectangles appear on the new stuff and the other half on the old buffer.
Is there anything important I need to know about how the internal buffer works when in fullscreen mode? Is there some trick I can use to avoid this issue?