Closed OnlineCop closed 2 years ago
I've made progress on this, it switches mode OK but in fullscreen it stretches to fit the monitor aspect ratio (and most people don't have 4:3 monitors these days!) I need to add a destination rectangle and put black bars up the two sides.
I'm in favor of dropping support for the unscaled view entirely.
This isn't a preview image. This is the 1:1 windowed un-stretched display. It's tiny.
If you think people will want it, we can certainly support it.
As for fullscreen mode: I don't know that I've ever played the game fullscreen. I mean, back in the MSDOS days, sure. So again, if people would actually use or request this, I won't vote to remove it, but I personally don't use it.
I can make it so the Window can be resized to anything just by dragging the corners as normal - or maybe it should snap to 1x 2x 3x etc? The size would get saved in config then it would restart at the same size next time. I would like to keep fullscreen mode, also straightforward as it's a flag to SDL_CreateWindow (or can be set afterwards). SDL does support platforms without a window system (pretty sure, can't think of any just now) so we should handle that case.
I'm fine leaving fullscreen mode.
In writing this response, I've edited it about a dozen times, trying to decide whether I like free-scale resizing or hate it. People with massive monitors may find that free-form scaling makes it look better. I personally like the 1:1 proportions maintained to keep the old-school feel.
But then again, if we update the graphics to anything besides 16x16 tiles, free scaling might turn out to be better.
I think I'd go with your first idea: free-form window sizing, where we'd just add bars around the top/bottom or left/right edges like modern Zoom/MS Teams/Discord collab tools would do.
On Windows, compiled from VS2022, the game opens by default in windowed mode.
Steps
Actual
Expected