diff options
Diffstat (limited to 'src/quick/scenegraph/qsgwindowsrenderloop.cpp')
-rw-r--r-- | src/quick/scenegraph/qsgwindowsrenderloop.cpp | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/quick/scenegraph/qsgwindowsrenderloop.cpp b/src/quick/scenegraph/qsgwindowsrenderloop.cpp index 743e524a36..2a2d8be657 100644 --- a/src/quick/scenegraph/qsgwindowsrenderloop.cpp +++ b/src/quick/scenegraph/qsgwindowsrenderloop.cpp @@ -55,7 +55,7 @@ #include <private/qquickprofiler_p.h> #include <private/qquickanimatorcontroller_p.h> -#ifndef QT_NO_OPENGL +#if QT_CONFIG(quick_shadereffect) && QT_CONFIG(opengl) #include <private/qquickopenglshadereffectnode_p.h> #endif @@ -84,18 +84,17 @@ QSGWindowsRenderLoop::QSGWindowsRenderLoop() { m_rc = static_cast<QSGDefaultRenderContext *>(m_sg->createRenderContext()); - m_animationDriver = m_sg->createAnimationDriver(m_sg); - m_animationDriver->install(); - - connect(m_animationDriver, SIGNAL(started()), this, SLOT(started())); - connect(m_animationDriver, SIGNAL(stopped()), this, SLOT(stopped())); - m_vsyncDelta = 1000 / QGuiApplication::primaryScreen()->refreshRate(); if (m_vsyncDelta <= 0) m_vsyncDelta = 16; RLDEBUG("Windows Render Loop created"); + m_animationDriver = m_sg->createAnimationDriver(m_sg); + connect(m_animationDriver, SIGNAL(started()), this, SLOT(started())); + connect(m_animationDriver, SIGNAL(stopped()), this, SLOT(stopped())); + m_animationDriver->install(); + qsg_render_timer.start(); } @@ -245,7 +244,7 @@ void QSGWindowsRenderLoop::windowDestroyed(QQuickWindow *window) if (Q_UNLIKELY(!current)) qCDebug(QSG_LOG_RENDERLOOP) << "cleanup without an OpenGL context"; -#ifndef QT_NO_OPENGL +#if QT_CONFIG(quick_shadereffect) && QT_CONFIG(opengl) QQuickOpenGLShaderEffectMaterial::cleanupMaterialCache(); #endif |