Currently on macOS with the latest SDL release. I am creating a window with and without
SDL_VIDEO_HIGHDPI_DISABLED along with a GL context.
SDL_GL_GetDrawableSize is returning what I would expect: 2x win size with high dpi enabled and win size when high dpi is disabled.
When I go to render everything is working as expected with
SDL_VIDEO_HIGHDPI_DISABLED on a retina MacBook. If high dpi is enabled, I am seeing the second image below. In both cases the framebuffer is being created with the output of
SDL_GL_GetDrawableSize. With high dpi disabled, it seems I still have to create my framebuffer at retina scale:
SDL_GL_GetDrawableSize * 2.
What I am actually trying to do here is have everything look identical whether in high dpi mode or not, but have the backing store just be scaled up if high dpi is disabled while still on a retina screen (I believe for macOS this is handled by the
contentsScale of the CALayer). Is it possible to get this behavior with SDL methods directly?