summaryrefslogtreecommitdiffstats
path: root/src/runtime/aping/q3dsstudio3dengine.cpp
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2018-08-17 16:52:21 +0200
committerLaszlo Agocs <laszlo.agocs@qt.io>2018-08-20 14:54:05 +0000
commit50a0716deb9bfb9e995091b0f8a6b36c488e736b (patch)
tree5714c112bd1bcb34c6cd2c1b947d293fe8dce8dc /src/runtime/aping/q3dsstudio3dengine.cpp
parent4cbee366a0f0957501676a1a4b591aa8534fcaa1 (diff)
Improve frame rate reporting in profileui
Show something from the Qt Quick render thread too. Change-Id: Id62cc6835baa06f367e324baafdc029ad25be71e Reviewed-by: Christian Stromme <christian.stromme@qt.io>
Diffstat (limited to 'src/runtime/aping/q3dsstudio3dengine.cpp')
-rw-r--r--src/runtime/aping/q3dsstudio3dengine.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/runtime/aping/q3dsstudio3dengine.cpp b/src/runtime/aping/q3dsstudio3dengine.cpp
index 890fb19..3459d95 100644
--- a/src/runtime/aping/q3dsstudio3dengine.cpp
+++ b/src/runtime/aping/q3dsstudio3dengine.cpp
@@ -398,6 +398,8 @@ Q3DSStudio3DEngine::Renderer::Renderer(Q3DSStudio3DEngine *engine, Qt3DCore::QAs
connect(m_engine->window(), &QQuickWindow::beforeRendering,
this, &Q3DSStudio3DEngine::Renderer::render, Qt::DirectConnection);
+ m_usingRenderThread = QThread::currentThread() != qGuiApp->thread();
+
// there is no OpenGL context guaranteed to be current here so defer everything else
}
@@ -448,6 +450,8 @@ void Q3DSStudio3DEngine::Renderer::render()
// off we go
QMetaObject::invokeMethod(m_engine, "startEngine");
+
+ m_renderTimer.start();
}
// With the threaded render loop we may skip 1 or 2 frames since there is
@@ -500,6 +504,9 @@ void Q3DSStudio3DEngine::Renderer::render()
}
}
+ if (m_engine->engine())
+ m_engine->engine()->reportQuickRenderLoopStats(m_renderTimer.restart(), m_usingRenderThread);
+
// ### hmm... like Scene3D and Studio3D, this also suffers from the problem
// of forcing continuous updates on Qt Quick level since there is no way to
// know if a QQuickWindow render round is necessary as there is no telling