[Interest] Platform eglfs and OpenGL

Till Oliver Knoll till.oliver.knoll at gmail.com
Tue Feb 18 17:27:10 CET 2014


Am 18.02.2014 um 15:25 schrieb Agocs Laszlo <Laszlo.Agocs at digia.com>:

> Nothing stops you from "using OpenGL in a Qt application", what you cannot do is mixing QGLWidget with other widgets. Take hellogl_es2 for example and strip out the MainWindow with all the widgets. If you only have the QGLWidget and nothing else, it will work fine on eglfs too.

You must have meant "you cannot mix Q*Open*GLWidget" (yet) with QGLWidget?

Wasn't there as well the suggestion (in some Qt blog) to use a QWindow with a GL surface (write all the tedious boilerplate code you now are supposed to write yourself *ahem*) and then "wrap" that QWindow into a QWidget (with a "wrapper" class/container: QWidget::createWindowContainer())?

And that Q*Open*GLWidget would implement exactly that, so /we/ don't have to write the boilerplate code and basically end up with what we had with the *previous* QGLWidget, except that the new QOpenGL classes grok better together with recent OpenGL 4.x context?

So what you suggested is that if I want to start using OpenGL *now* (Qt 5.2) I should be using QWindow with GL surface, write the boilerplate code myself (all that initialiseGL, updateGL, resizeGL stuff) and wrap that into a "QWidget container"?

And once Qt >=5.4 appears I would throw away my QWindow based class (see "boilerplate code") and start using Q*Open*GLWidget - correct?


Is that the (simplified) story? :)

Cheers,
  Oliver

P.S. Yes, we really want *QWidgets* & OpenGL here ;)


More information about the Interest mailing list