Quick update on "True Non-Retina" UI scaling via betterdisplay screen streaming:
For some reason I feel a lot better setting physical screen to "2560x1600 1x" (aka 2560x1600 with 100% UI zoom) — instead of "1280x800 2x" (aka 2560x1600 with 200% UI zoom).
(In both cases the virtual screen is 1280x800 1x with integer scaling enabled to achieve true non-retina.)
No idea what makes these different as they should be "the same" (1280x800 2x is "technically" just 2560x1600 with 200% UI zoom, both end up with a visually similar result of exactly 4 physical pixels representing 1 pixel).
-
But when using 2x on the physical screen I feel more tired, harder time focusing. Despite being able to "see the pixels" properly because of integer scaling, it looks ever so slightly blurry. Was using it in this mode for a few hours today and I realized I was starting to feel nausea.
Using 1x on the physical screen (as in the "100% zoom" resolution that would usually make the UI extremely tiny, if it wasn't for the stream) it's sooo much quicker for me to focus and I can hold it for longer. The screen also looks noticeably sharper. Only downside is that I also feel like the screen gets slightly brighter. Literally right after using 2x native physical today as mentioned above, I switched to 2x native physical (and at first, not even really believing that this would help me since both are effectively 2560x1600) and immediately started to feel better. Nausea went away. It was really noticeable.
My guess: in 2x-native mode on the physical display, macOS WindowServer itself is playing some kind of part in "scaling" BetterDisplay's streaming window because even if "1:1 pixel mapping" is checked the non-Retina stream will be the "correct" size of 13 inches. But in 1x-native mode, checking "1:1 pixel mapping" will shrink the 1280x800 1x stream to a quarter of the physical screen size (as would be expected).
This means that in 1x mode BetterDisplay itself is entirely handling the scaling the non-Retina stream back up to the full 13 inches of my m1air. What's certain about that is there's one less step of OS post-processing when set to physical 2560x1600 1x instead of physical 1280x800 2x.
My only guess is that there's some kind of really subtle additional smoothing that WindowServer adds via an additional Metal layer etc. (despite BetterDisplay integer scaling being enabled) that I'm sensitive to.
I usually can tell when things feel like they may just be placebo. In this case, I do NOT think this is placebo.
Current color profiles:
Physical display is using the default Color LCD profile
Streamed display is using the default virtual display color profile
No Night Shift, no True Tone, no auto-brightness no keyboard backlight
IOMFB contrast enhancement forced to 0 with repeating script while testing both physical display modes