Currently, CataDDA (graphical version) is hardly playable on HiDPI screens. Even if the tiles were large enough, the text is illegible. The proper solution would be to make its in render size independent of the window size. This would work as follows:
Since CataDDA uses SDL2 for rendering, my suggested changes should be rather easy to implement but we still need to talk about it before I make a patch.
I suggest not making a bigger font/bigger tile set hacky fix. This doesn't really solve the fundamental problem that currently windows viewport size and render size are fixed to one another.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Why on earth would you play a roguelike with tiles
@tyrael93 How about not deriding the way other players choose to play a game?
How do you guys think this technical issue should best be handled?
@tyrael93 You can make an issue here in github and suggest the removal of tiles if you feel that way. I'm strongly for keeping them though.
I assume you're suggesting rendering to a back buffer sized as per the
options and tile size, and then blitting to a display buffer that's scaled
as per the window size.
The alternative, adjusting scaling for each render operation, would be
strictly worse since we render a number of layers, and it would defeat any
tile caching we do.
I'm a bit concerned that pervasive rescaling is going to cause performance
issues on some systems, so at a minimum any such system needs to have an
option to disable it. Specifically we support systems that fall back to
software rendering, and scaling while blitting is really expensive in
software.
Please ignore tyrael, and rest assured that we ignore him already.
Yes, the backbuffer stuff is very much what I suggest. SDL2 makes this trivial using SDL_RenderSetLogicalSize function. On hardware accelerated systems, this will not cause a slowdown. In the case of software rendering, we could use SDL_BlitScaled.
Very very very much please this. +1
Ok guys, please test.