diff options
-rw-r--r-- | examples/declarative/openglunderqml/main.py | 2 | ||||
-rw-r--r-- | examples/declarative/openglunderqml/squircle.py | 10 | ||||
-rw-r--r-- | examples/declarative/openglunderqml/squirclerenderer.py | 7 |
3 files changed, 8 insertions, 11 deletions
diff --git a/examples/declarative/openglunderqml/main.py b/examples/declarative/openglunderqml/main.py index 26e059f93..44ee10834 100644 --- a/examples/declarative/openglunderqml/main.py +++ b/examples/declarative/openglunderqml/main.py @@ -51,7 +51,7 @@ from squircle import Squircle if __name__ == "__main__": app = QGuiApplication(sys.argv) - QQuickWindow.setGraphicsApi(QSGRendererInterface.OpenGLRhi) + QQuickWindow.setGraphicsApi(QSGRendererInterface.OpenGL) qmlRegisterType(Squircle, "OpenGLUnderQML", 1, 0, "Squircle") view = QQuickView() diff --git a/examples/declarative/openglunderqml/squircle.py b/examples/declarative/openglunderqml/squircle.py index 8d2cbca84..3e600121b 100644 --- a/examples/declarative/openglunderqml/squircle.py +++ b/examples/declarative/openglunderqml/squircle.py @@ -82,21 +82,23 @@ class Squircle(QQuickItem): win.setColor(Qt.black) self.sync() + @Slot() def cleanup(self): del self._renderer self._renderer = None @Slot() def sync(self): + window = self.window() if not self._renderer: self._renderer = SquircleRenderer() - self.window().beforeRendering.connect(self._renderer.init, Qt.DirectConnection) - self.window().beforeRenderPassRecording.connect( + window.beforeRendering.connect(self._renderer.init, Qt.DirectConnection) + window.beforeRenderPassRecording.connect( self._renderer.paint, Qt.DirectConnection ) - self._renderer.setViewportSize(self.window().size() * self.window().devicePixelRatio()) + self._renderer.setViewportSize(window.size() * window.devicePixelRatio()) self._renderer.setT(self._t) - self._renderer.setWindow(self.window()) + self._renderer.setWindow(window) def releaseResources(self): self.window().scheduleRenderJob( diff --git a/examples/declarative/openglunderqml/squirclerenderer.py b/examples/declarative/openglunderqml/squirclerenderer.py index 12cd93bb8..9f857f55f 100644 --- a/examples/declarative/openglunderqml/squirclerenderer.py +++ b/examples/declarative/openglunderqml/squirclerenderer.py @@ -80,8 +80,6 @@ class SquircleRenderer(QOpenGLFunctions): self._t = 0.0 self._program = None self._window = QQuickWindow() - self.profile = QOpenGLVersionProfile() - self.gl = None def setT(self, t): self._t = t @@ -96,10 +94,7 @@ class SquircleRenderer(QOpenGLFunctions): def init(self): if not self._program: rif = self._window.rendererInterface() - assert ( - rif.graphicsApi() == QSGRendererInterface.OpenGL - or rif.graphicsApi() == QSGRendererInterface.OpenGLRhy - ) + assert (rif.graphicsApi() == QSGRendererInterface.OpenGL) self.initializeOpenGLFunctions() self._program = QOpenGLShaderProgram() self._program.addCacheableShaderFromSourceCode(QOpenGLShader.Vertex, VERTEX_SHADER) |