summaryrefslogtreecommitdiffstats
path: root/examples/opengl
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@digia.com>2012-09-13 20:50:59 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-09-27 18:35:55 +0200
commitccf0669da933e519edcff03698643e906b5935d5 (patch)
tree7c5d7880f0ef8755aebf9a653eff0a9004330c8c /examples/opengl
parent2d70dde68a1af355ae10cd6bd34f44006f16918a (diff)
Added QGLPixelBuffer implementation using framebuffer objects.
Instead of having QGLPixelBuffer be a unusable stub implementation we deprecate it and implement it in terms of QOpenGLFramebufferObject. Framebuffer objects are anyway the recommended replacement for pixelbuffers in modern OpenGL, as the context switching overhead is avoided. Change-Id: Ia220c358ee92813e87981d297c51d84525010322 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'examples/opengl')
-rw-r--r--examples/opengl/pbuffers/main.cpp6
-rw-r--r--examples/opengl/pbuffers2/glwidget.cpp2
-rw-r--r--examples/opengl/pbuffers2/main.cpp6
3 files changed, 7 insertions, 7 deletions
diff --git a/examples/opengl/pbuffers/main.cpp b/examples/opengl/pbuffers/main.cpp
index 6ae4542ca6..58d25245a1 100644
--- a/examples/opengl/pbuffers/main.cpp
+++ b/examples/opengl/pbuffers/main.cpp
@@ -49,14 +49,16 @@ int main(int argc, char **argv)
Q_INIT_RESOURCE(pbuffers);
QApplication a(argc, argv);
+ GLWidget widget(0);
+ widget.resize(640, 480);
+ widget.makeCurrent();
+
if (!QGLFormat::hasOpenGL() || !QGLPixelBuffer::hasOpenGLPbuffers()) {
QMessageBox::information(0, "OpenGL pbuffers",
"This system does not support OpenGL/pbuffers.");
return -1;
}
- GLWidget widget(0);
- widget.resize(640, 480);
widget.show();
return a.exec();
}
diff --git a/examples/opengl/pbuffers2/glwidget.cpp b/examples/opengl/pbuffers2/glwidget.cpp
index 1fcfdcb533..d8dbe9854c 100644
--- a/examples/opengl/pbuffers2/glwidget.cpp
+++ b/examples/opengl/pbuffers2/glwidget.cpp
@@ -144,8 +144,6 @@ void GLWidget::draw()
pbuffer_painter.end();
glFlush();
- // rendering directly to a texture is not supported on X11 and
- // some Windows implementations, unfortunately
if (!hasDynamicTextureUpdate)
pbuffer->updateDynamicTexture(dynamicTexture);
diff --git a/examples/opengl/pbuffers2/main.cpp b/examples/opengl/pbuffers2/main.cpp
index eb956d472e..29ddec9bb9 100644
--- a/examples/opengl/pbuffers2/main.cpp
+++ b/examples/opengl/pbuffers2/main.cpp
@@ -47,14 +47,14 @@ int main(int argc, char **argv)
Q_INIT_RESOURCE(pbuffers2);
QApplication a(argc, argv);
+ GLWidget widget(0);
+ widget.resize(640, 480);
+ widget.makeCurrent();
if (!QGLFormat::hasOpenGL() || !QGLPixelBuffer::hasOpenGLPbuffers()) {
QMessageBox::information(0, "OpenGL pbuffers 2",
"This system does not support OpenGL/pbuffers.");
return -1;
}
-
- GLWidget widget(0);
- widget.resize(640, 480);
widget.show();
return a.exec();
}