OpenGL: Fix QGLFormat::openGLVersionFlags() on OS X
OS X is limited to OpenGL 3.2 and we have to explicitly request a Core profile context to get the full set of available versions as OS X does not implement the Compatibility profile. Change-Id: I8c2a6dc272416cbaf8fee44adbc4471417bf4510 Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>bb10
parent
9e9911715c
commit
61d853797b
|
|
@ -314,8 +314,17 @@ QGLTemporaryContext::QGLTemporaryContext(bool, QWidget *)
|
|||
#if !defined(QT_OPENGL_ES)
|
||||
// On desktop, request latest released version
|
||||
QSurfaceFormat format;
|
||||
#if defined(Q_OS_MAC)
|
||||
// OS X is limited to OpenGL 3.2 Core Profile at present
|
||||
// so set that here. If we use compatibility profile it
|
||||
// only reports 2.x contexts.
|
||||
format.setMajorVersion(3);
|
||||
format.setMinorVersion(2);
|
||||
format.setProfile(QSurfaceFormat::CoreProfile);
|
||||
#else
|
||||
format.setMajorVersion(4);
|
||||
format.setMinorVersion(3);
|
||||
#endif
|
||||
d->context->setFormat(format);
|
||||
#endif
|
||||
d->context->create();
|
||||
|
|
|
|||
Loading…
Reference in New Issue