From fb72bb3cf27d1f94760709aaab82e3524ae936f4 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Tue, 10 Dec 2013 12:11:14 +0100 Subject: QSGRenderer: sanity check attribute regs only when QSG_SANITY_CHECK=1 The sanity check that attribute registers are disabled that was always done in debug mode took roughly 16ms on my machine and caused a trivial QML animation to eat 100% CPU. Task-number: QTBUG-35443 Change-Id: I8ba2a80db341d17e08216b3cad1678dd59b9b1a5 Reviewed-by: Gunnar Sletta --- src/quick/scenegraph/coreapi/qsgrenderer.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/quick') diff --git a/src/quick/scenegraph/coreapi/qsgrenderer.cpp b/src/quick/scenegraph/coreapi/qsgrenderer.cpp index 3c9c353bd8..df70b5c5eb 100644 --- a/src/quick/scenegraph/coreapi/qsgrenderer.cpp +++ b/src/quick/scenegraph/coreapi/qsgrenderer.cpp @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE //#define RENDERER_DEBUG //#define QT_GL_NO_SCISSOR_TEST - +static bool qsg_sanity_check = qgetenv("QSG_SANITY_CHECK").toInt(); #ifndef QSG_NO_RENDER_TIMING static bool qsg_render_timing = !qgetenv("QSG_RENDER_TIMING").isEmpty(); @@ -243,9 +243,8 @@ void QSGRenderer::renderScene(const QSGBindable &bindable) bindTime = frameTimer.nsecsElapsed(); #endif -#ifndef QT_NO_DEBUG // Sanity check that attribute registers are disabled - { + if (qsg_sanity_check) { GLint count = 0; glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, &count); GLint enabled; @@ -256,7 +255,6 @@ void QSGRenderer::renderScene(const QSGBindable &bindable) } } } -#endif render(); #ifndef QSG_NO_RENDER_TIMING -- cgit v1.2.3