Re: Retina support in OSX?
Posted by
Sven Gothel on
May 29, 2013; 3:06pm
URL: https://forum.jogamp.org/Retina-support-in-OSX-tp4029248p4029251.html
On 05/29/2013 04:54 PM, ac [via jogamp] wrote:
> Yes, that sounds like the logical answer, however a couple of people reported
> Processing issues that only happen on Retina machines:
>
>
https://github.com/processing/processing/issues/1812>
https://github.com/processing/processing/issues/1699>
> I don't know if this is relevant here, but from some discussion on a LWJGL
> thread about OSX it seems that Retina support might be tricky, at least in
> certain modes:
>
>
http://lwjgl.org/forum/index.php/topic,4711.msg26462.html#msg26462>
> "A rather messy issue with implementing retina support is when switching it on
> the high resolution mode only applies to the OpenGL context (normally 4x the
> normal pixel size but not guaranteed to be so and can change in future). The
> size used by the windowing API's (Cocoa/Quartz, etc) still remains the
> original non retina pixel size, so API calls like Display.getWidth(),
> Display.getHeight(), Mouse.getX(), Mouse.getY(), etc won't match the context
> size (often used in calls like glViewport, glScissor, glReadPixels,
> glTexImage2D, etc)."
>
> I still need to run tests on Retina machines myself, so I cannot talk from my
> own experience yet.
This is a very good summary of what probably needs to be done!
Can you add a new bug entry (enhancement) for this and add all the above ?
I would call it "Enable Hi-Dpi Mode on OSX (Retina)"
IMHO, if retina is available, we should use it - i.e. why missing all the pixels ?
This would give similar [hardware] experience as w/ other TKs.
AFAIK, we 'just' have to set a magic pixel-configuration bit/property.
As you mentioned, the window coordinate mapping must be performed as well then.
Naturally, I am against an OSX only config flag to toggle Hi-Dpi.
Maybe it can fit in our MonitorMode schema ?
Only problem is that on OSX, it is window based - but we could ignore this fact ofc
and use Hi-Dpi per monitor, if so selected.
More thoughts / ideas are welcome.
Note: I do not posses a Retina OSX machine.
~Sven