-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Description
For 0.10.0 I would love to get real retina / HiDPI support working in the OF core.
Currently the state of things is that if you set High Resolution Capable via a plist setting you get a window which has a frame buffer with twice as many pixels as the window size. This means that in HiRes mode a 1024x768 window is half the size on your screen as in regular mode.
Currently we're converting all OF window size / position and screen size coordinates by this scale, but that starts to get very confusing when you start doing multi window stuff with a mixture of retina and non retina screens.
The current approach makes it really hard to make an app support both retina and non retina screens as all the scaling and adjustment is left up to the user.
A different approach would be to keep the window size the same for both retina and non retina but setup the viewports and matrixes to make the retina window look the same as the non retina window, with 2x the width and height when it comes to the frame buffer.
If we could make this work, an app that was loaded as retina vs a non retina app would have exactly the same user code, but the retina one would be rendering at a higher pixel density.
I have most of this working in a separate branch - but fonts get quite tricky as you would need to load them in with 2x the DPI and then still display them at the scale and spacing of the non retina dpi.
Anyway, before I get too heavy into this would love any thoughts from people on the matter :)
pinging @braitsch @Xrave @danzeeeman @openframeworks/core