[Interest] High-dpi fixing for Qt 5.5
Eddie Sutton
edsutton at gmail.com
Tue Mar 24 16:14:40 CET 2015
Thanks Laszlo for the nice presentation "News from the Graphics Stack: Improvements to the core OpenGL enablers in Qt 5.3 & 5.4”.
Are related code samples available? Do you know if there be a 2015 Fall Qt Developer Days event in U.S.?
Qt3D documentation seems to be in the form of examples only. I am using these for clues on how to integrate Qt3D into an existing QWidget app.
The OpenGL learning resources are very much appreciated!
-Ed
> On Mar 24, 2015, at 9:46 AM, Agocs Laszlo <laszlo.agocs at theqtcompany.com> wrote:
>
> Because Qt 3D most likely misses a few multiplications by devicePixelRatio(). Probably easy to correct.
>
> See http://www.qtdeveloperdays.com/sites/default/files/presentation_pdf/AgocsLaszlo_opengl_enablers_news.pdf#26 <http://www.qtdeveloperdays.com/sites/default/files/presentation_pdf/AgocsLaszlo_opengl_enablers_news.pdf#26>
>
> Best regards,
> Laszlo
>
> From: interest-bounces+laszlo.agocs=theqtcompany.com at qt-project.org [mailto:interest-bounces+laszlo.agocs=theqtcompany.com at qt-project.org] On Behalf Of Till Oliver Knoll
> Sent: 24. mars 2015 15:06
> To: Qt Project
> Subject: Re: [Interest] High-dpi fixing for Qt 5.5
>
>
>
> Am 24.03.2015 um 14:39 schrieb Eddie Sutton <edsutton at gmail.com <mailto:edsutton at gmail.com>>:
>
> >My knowledge of available "HiDPI" APIs is currently based on your (excellent) blog post, which does not seem to mention that use case:
>
> >http://blog.qt.io/blog/2013/04/25/retina-display-support-for-mac-os-ios-and-x11/ <http://blog.qt.io/blog/2013/04/25/retina-display-support-for-mac-os-ios-and-x11/>
>
> Thanks for posting the excellent link. It may help me find a work-around for a Qt3D windows scaling issue that affects OS X and iOS as well.
>
> This, plus the Apple Developer docs may help as well, see "Enable OpenGL for High-Resolution Drawing"
>
> https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/CapturingScreenContents/CapturingScreenContents.html#//apple_ref/doc/uid/TP40012302-CH10-SW1 <https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/CapturingScreenContents/CapturingScreenContents.html#//apple_ref/doc/uid/TP40012302-CH10-SW1>
>
> "OpenGL is a pixel-based API. The NSOpenGLView class does not provide high-resolution surfaces by default. Because adding more pixels to renderbuffers has performance implications, you must explicitly opt in to support high-resolution screens.
>
> You can opt in to high resolution by calling the method setWantsBestResolutionOpenGLSurface: when you initialize the view, and supplying YES as an argument:
>
> [self setWantsBestResolutionOpenGLSurface:YES];
>
> If you don't opt in, the system magnifies the rendered results."
>
> /quote
>
> Basically the docs say that OpenGL is a pixel-based drawing system, so any conversions between "points" and "pixels" needs to be done explicitly by the application itself, e.g. when resizing a window. And that you have to explicitly enable the "HiDPI" mode for the OpenGL context first.
>
> How much that helps you to fix problems with the Qt3D module I can't say, but it is generally something you have to keep in mind when developing your own OpenGL based application (under OS X - on other OSes similar rules probably apply, too).
>
> Cheers, Oliver
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150324/02935b13/attachment.html>
More information about the Interest
mailing list