diff options
author | Mike Krus <mike.krus@kdab.com> | 2020-02-13 18:44:29 +0000 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2020-02-14 07:02:52 +0000 |
commit | 6aef82519bdc538c2fee67047bd990485715c721 (patch) | |
tree | f766c35cb33c4a05d41794898a5dc9beddf20b45 | |
parent | 596bc5734ba525f3d3df45980087c2b3fd90a98f (diff) |
Show geometry renderer id in draw commands
Along with dump of scene graph, helps understand what gets drawn
Change-Id: I41223b633d20d3d8ee81f5a08aab2cd8e436647e
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r-- | src/plugins/renderers/opengl/debug/imguirenderer.cpp | 3 | ||||
-rw-r--r-- | src/plugins/renderers/opengl/renderer/renderer_p.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/renderers/opengl/debug/imguirenderer.cpp b/src/plugins/renderers/opengl/debug/imguirenderer.cpp index e23476860..449ec65b0 100644 --- a/src/plugins/renderers/opengl/debug/imguirenderer.cpp +++ b/src/plugins/renderers/opengl/debug/imguirenderer.cpp @@ -334,7 +334,8 @@ void ImGuiRenderer::showRenderDetails(const QVector<RenderView *> &renderViews) int j = 1; const auto commands = view->commands(); for (const RenderCommand &command: commands) { - QString label(QLatin1String("Command ") + QString::number(j++)); + GeometryRenderer *rGeometryRenderer = m_renderer->nodeManagers()->data<GeometryRenderer, GeometryRendererManager>(command.m_geometryRenderer); + QString label = QString(QLatin1String("Command %1 {%2}")).arg(QString::number(j++), QString::number(rGeometryRenderer->peerId().id())); if (ImGui::TreeNode(label.toLatin1().data())) { ImGui::Text("Primitive Type: %s %s", primitiveTypeName(command.m_primitiveType), command.m_drawIndexed ? "(indexed)" : ""); diff --git a/src/plugins/renderers/opengl/renderer/renderer_p.h b/src/plugins/renderers/opengl/renderer/renderer_p.h index f24e77152..aa3b26961 100644 --- a/src/plugins/renderers/opengl/renderer/renderer_p.h +++ b/src/plugins/renderers/opengl/renderer/renderer_p.h @@ -329,6 +329,7 @@ public: RendererCache *cache() { return &m_cache; } void setScreen(QScreen *scr) override; QScreen *screen() const override; + NodeManagers *nodesManager() const { return m_nodesManager; } #ifdef QT3D_RENDER_UNIT_TESTS public: |