How to handle texture resolution/quality?



How do you handle different zoom levels and how the texture quality relates?

I’m currently having a texture that is 1024x1024. I draw this texture with a destination resolution of 102x102 because 1024x1024 is quite a big for a sprite to fit into 1280x720 resolution.
So I draw all game objects to a texture and then render the texture to the window’s resolution.

E.g. 1280x720 to 1920x1080

However, when a user zooms the textures are of a quite low resolution of course. I realised that I could scale the destination resolution based on the zoom factor. So if someone zoomed in x1.5, the texture is 153x153. this looks better.

Is this a valid approach? I heard about mipmapping, would that mean I pick the most suiting quality level depending on scale factor and then resize the last bit? E.g. 4 quality levels to prevent the dynamic interpolation that occurs when I put the destination size dependant on the zoom factor every frame.

I am not entirely sure how most games handle this. I know some even allow for settings to set texture quality. What actually improves there?

Or should I draw the textures in their original size to the render target and then just let the rendering to the window do the rest?
E.g. 4k world resolution but 720p screen.

I hope someone could share some of their thoughts with me! I know that a lot of SDL2 tutorials still show that sprites etc. are transformed instead of them being drawn to a render target. I find that a bit odd though as I do not know a single more modern high level graphics API doing that anymore, they all use Views/Rendertargets.

Thanks for your time<3