How does this work? Will it just upscale or is e.g. text still rendered at 4K? Rendering not at native resolution results always in blurred edges in my experience.
Very well, in my experience. Apple has been doing what it calls "retina" display for a while now, whereby it keeps the display's actual resolution at a high native level but scales everything it renders so the screen is effectively a lower resolution... but really smooth because of it.
Here's an album with a pair of screenshots from my own 4k display: https://imgur.com/a/7AHZZZv -- the scaled one is how I normally use it.
It's sharp enough but when compared to a native 1x/2x scaling, it still looks blurry, and it's only seen physically for me. Currently I run my M1 MBA at native 2560*1600 (BetterDummy, non hiDpi), and my 27" 4k at native. Set default zoom on chrome to be 125/150%, and VSCode also at "zoomed". I mostly use Chrome and Electron based apps (Spotify), so the increase in text sharpness is worth it. Native apps (Pritunl, etc) UI becomes too small, but again it's worth it for me.
In macOS, the entire display is rendered at 4K no matter what you pick from the resolution box. Most apps have learned to provide 2x-3x “retina” icons so that their bitmap resources look crisp alongside the system UI resources at user-selected “resolutions”.
The Windows UI scaling slider behaves in exactly the same way, though fewer apps include 2x or 3x bitmap resources.
> In macOS, the entire display is rendered at 4K no matter what you pick from the resolution box.
This makes it sound as if macOS upscales a 4K render when displaying to (for example) 5K monitors, but on a 5K monitor everything is ultimately rendered at a full physical resolution of 5120x2880. But in the Displays Preference Pane, the logical resolution is set by default to 2560x1440 (2:1). One can choose a logical resolution of 5120x2880 (1:1), but I can't imagine anyone working like that.
Correct, in the 5K case the entire display is rendered at 5K, and ditto 2K etc. (I believe the internal canvas caps at 32K, but I don’t have the tools to find out for sure.)
Whatever-sized display viewports are just crop windows into it, and the crop window in internal canvas terms is scaled as necessary, and then it renders the vector canvas onto the raster viewport.
Here's an album with a pair of screenshots from my own 4k display: https://imgur.com/a/7AHZZZv -- the scaled one is how I normally use it.