Details
-
Task
-
Resolution: Done
-
P1: Critical
-
None
-
None
-
e453484bca5add5973602044ff0fbc224f819a07, e48737ae778b8ef5e8e905825a2787b97deea23d
Description
In order to deprecate the opengl module, we need a replacement for QGLWidget. The current plan is to replicate the QGLWidget API as much as possible in QOpenGLWidget, and also in QOpenGLWindow.
The argument for having two separate classes is that QOpenGLWidget will need extra overhead to support seamless interaction with overlapping child and sibling widgets. Also, QOpenGLWindow will not depend on QtWidgets.
There is a preliminary QOpenGLWidget as private API in Qt 5.3, but that is missing a range of features, notably:
- Depth/stencil buffers
- format
- painting using the GL2 paint engine
- QGLContext/QGLWidget utility functions like bindTexture, drawTexture and renderText may not be necessary, but in that case we need to provide some QOpenGLWidget-based example that shows how to perform these things (this should be a separate task)
Attachments
Issue Links
- is required for
-
QTBUG-37546 OpenGL scroll bars not working on Mac OS X 10.9 Mavericks
-
- Closed
-
- replaces
-
QTBUG-31771 Introduce QOpenGLWidget
-
- Closed
-
- resulted from
-
QTBUG-31771 Introduce QOpenGLWidget
-
- Closed
-
For Gerrit Dashboard: QTBUG-36899 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
87957,42 | Make QOpenGLWidget public | dev | qt/qtbase | Status: MERGED | -1 | 0 |
90585,26 | Introduce QOpenGLWindow | dev | qt/qtbase | Status: MERGED | -1 | 0 |