5ebb9a8bf3
Old examples inherited from Qt 4 tend to set some state, such as enabling the depth test or culling, in initializeGL(). Newer examples tend not to do this; they rather set the necessary state in paintGL(). This mattered little (or not at all) in the past, but with WebAssembly and WebGL there are limitations in the GL context management in the wasm platform plugin. Under certain conditions, esp. when QOffscreenSurface is involved, it looks like the same native context gets reused, which means there is a chance of unexpected changes to the current state between calls to initializeGL() and paintGL(). (and also between paintGL() calls) See QWasmOpenGLContext for details. Update the textures example the same way we did for the cube one. Add a note to the QOpenGLWidget docs about this problem. Task-number: QTBUG-111304 Pick-to: 6.5 6.4 Change-Id: I29d2b2cdeb07bcecc5dc915d79c12b4323ca9ab3 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Inho Lee <inho.lee@qt.io> |
||
---|---|---|
.. | ||
2dpainting | ||
contextinfo | ||
cube | ||
doc | ||
hellogl2 | ||
hellogles3 | ||
openglwindow | ||
qopenglwidget | ||
stereoqopenglwidget | ||
textures | ||
CMakeLists.txt | ||
opengl.pro | ||
README |
Qt provides support for integration with OpenGL implementations on all platforms, giving developers the opportunity to display hardware accelerated 3D graphics alongside a more conventional user interface. These examples demonstrate the basic techniques used to take advantage of OpenGL in Qt applications. Documentation for these examples can be found via the Examples link in the main Qt documentation.