summaryrefslogtreecommitdiffstats
path: root/src/render/renderers/opengl/jobs
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2019-10-17 10:03:01 +0200
committerPaul Lemire <paul.lemire@kdab.com>2019-10-29 09:13:35 +0100
commitfee0f43522483415b4af1475caaca21658f3e24a (patch)
tree7e226f37ec3685b7caed96330f98f6aa82b74e27 /src/render/renderers/opengl/jobs
parent3c5848a923b9b9393753c654e837fc8c99bd8b23 (diff)
Convert EntityRenderCommandData to struct of vectors
Change-Id: Ib290491476b083e6aa4cff5c112a802c4e198987 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/renderers/opengl/jobs')
-rw-r--r--src/render/renderers/opengl/jobs/renderviewcommandbuilderjob_p.h4
-rw-r--r--src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp6
-rw-r--r--src/render/renderers/opengl/jobs/renderviewcommandupdaterjob_p.h4
3 files changed, 5 insertions, 9 deletions
diff --git a/src/render/renderers/opengl/jobs/renderviewcommandbuilderjob_p.h b/src/render/renderers/opengl/jobs/renderviewcommandbuilderjob_p.h
index 725f83b62..9f45a8005 100644
--- a/src/render/renderers/opengl/jobs/renderviewcommandbuilderjob_p.h
+++ b/src/render/renderers/opengl/jobs/renderviewcommandbuilderjob_p.h
@@ -68,14 +68,14 @@ public:
inline void setRenderView(RenderView *rv) Q_DECL_NOTHROW { m_renderView = rv; }
inline void setEntities(const QVector<Entity *> &entities) { m_entities = entities; }
- inline QVector<EntityRenderCommandData> &commandData() { return m_commandData; }
+ inline EntityRenderCommandData &commandData() { return m_commandData; }
void run() final;
private:
RenderView *m_renderView;
QVector<Entity *> m_entities;
- QVector<EntityRenderCommandData> m_commandData;
+ EntityRenderCommandData m_commandData;
};
typedef QSharedPointer<RenderViewCommandBuilderJob> RenderViewCommandBuilderJobPtr;
diff --git a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp
index d58b288e6..af1d545ed 100644
--- a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp
+++ b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp
@@ -70,11 +70,7 @@ void RenderViewCommandUpdaterJob::run()
// Copy commands out of cached -> ensures we can submit them for rendering
// while cache is rebuilt or modified for next frame
- QVector<RenderCommand> commands;
- commands.reserve(m_renderables.size());
- for (const EntityRenderCommandData *data : m_renderables)
- commands.push_back(data->command);
- m_commands = commands;
+ m_commands = m_renderables.commands;
}
}
diff --git a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob_p.h b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob_p.h
index 3fff5f1a0..72caef6cf 100644
--- a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob_p.h
+++ b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob_p.h
@@ -71,7 +71,7 @@ public:
inline void setRenderView(RenderView *rv) Q_DECL_NOTHROW { m_renderView = rv; }
inline void setRenderer(Renderer *renderer) Q_DECL_NOTHROW { m_renderer = renderer; }
- inline void setRenderables(const QVector<EntityRenderCommandData *> &renderables) Q_DECL_NOTHROW { m_renderables = renderables; }
+ inline void setRenderables(const EntityRenderCommandData &renderables) Q_DECL_NOTHROW { m_renderables = renderables; }
QVector<RenderCommand> &commands() Q_DECL_NOTHROW { return m_commands; }
@@ -80,7 +80,7 @@ public:
private:
RenderView *m_renderView;
Renderer *m_renderer;
- QVector<EntityRenderCommandData *> m_renderables;
+ EntityRenderCommandData m_renderables;
QVector<RenderCommand> m_commands;
};