It’s possible to call SDL_CreateWindow multiple times and it indeed opens multiple windows, but what then? Specifically, how to swap buffers when multiple windows are present?
// Render window1.
SDL_GL_MakeCurrent(glContext1, window1);
glClear(GL_COLOR_BUFFER_BIT);
// Render window2.
SDL_GL_MakeCurrent(glContext2, window2);
glClear(GL_COLOR_BUFFER_BIT);
// Waits for V-Sync then swaps buffers.
SDL_GL_MakeCurrent(glContext1, window1); // Is context switch needed?
SDL_GL_SwapWindow(window1);
// Does this swap buffers immediately or wait for the next V-Sync?
// If it swaps buffers immediately, how does it know that it doesn't
// need to wait? Is there a time limit? If it waits for V-Sybc every
// time, how to swap buffers when multiple windows are present?
SDL_GL_MakeCurrent(glContext2, window2); // Is context switch needed?
SDL_GL_SwapWindow(window2);