diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2019-10-17 10:03:01 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2019-10-29 09:13:35 +0100 |
commit | fee0f43522483415b4af1475caaca21658f3e24a (patch) | |
tree | 7e226f37ec3685b7caed96330f98f6aa82b74e27 /src/render/renderers/opengl/jobs | |
parent | 3c5848a923b9b9393753c654e837fc8c99bd8b23 (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')
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; }; |