summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/opengl/qopenglwindow.cpp17
-rw-r--r--src/openglwidgets/qopenglwidget.cpp7
2 files changed, 24 insertions, 0 deletions
diff --git a/src/opengl/qopenglwindow.cpp b/src/opengl/qopenglwindow.cpp
index e29c79fdcb..b2a1a35a90 100644
--- a/src/opengl/qopenglwindow.cpp
+++ b/src/opengl/qopenglwindow.cpp
@@ -60,6 +60,23 @@ QT_BEGIN_NAMESPACE
given OpenGL version and profile, or enabling depth and stencil
buffers.
+ \note It is up to the application to ensure depth and stencil buffers are
+ requested from the underlying windowing system interface. Without requesting
+ a non-zero depth buffer size there is no guarantee that a depth buffer will
+ be available, and as a result depth testing related OpenGL operations may fail
+ to function as expected.
+
+ Commonly used depth and stencil buffer size requests are 24 and 8,
+ respectively. For example, a QOpenGLWindow subclass could do this in its
+ constructor:
+
+ \code
+ QSurfaceFormat format;
+ format.setDepthBufferSize(24);
+ format.setStencilBufferSize(8);
+ setFormat(format);
+ \endcode
+
Unlike QWindow, QOpenGLWindow allows opening a painter on itself and perform
QPainter-based drawing.
diff --git a/src/openglwidgets/qopenglwidget.cpp b/src/openglwidgets/qopenglwidget.cpp
index 6c3a412219..d5f4e769d9 100644
--- a/src/openglwidgets/qopenglwidget.cpp
+++ b/src/openglwidgets/qopenglwidget.cpp
@@ -178,6 +178,13 @@ QT_BEGIN_NAMESPACE
\snippet code/doc_gui_widgets_qopenglwidget.cpp 2
+ \note It is up to the application to ensure depth and stencil buffers are
+ requested from the underlying windowing system interface. Without requesting
+ a non-zero depth buffer size there is no guarantee that a depth buffer will
+ be available, and as a result depth testing related OpenGL operations may
+ fail to function as expected. Commonly used depth and stencil buffer size
+ requests are 24 and 8, respectively.
+
With OpenGL 3.0+ contexts, when portability is not important, the versioned
QOpenGLFunctions variants give easy access to all the modern OpenGL functions
available in a given version: