diff options
author | Harald Vistnes <harald.vistnes@gmail.com> | 2019-08-20 19:22:25 +0200 |
---|---|---|
committer | Harald Vistnes <harald.vistnes@gmail.com> | 2019-08-26 10:08:51 +0200 |
commit | dbd7c517e4d49fb05457a7fe290f7c4e48cdb9cf (patch) | |
tree | 3b99b81e68101d4e4768b615b1c6ea8d43de132f /src/render/renderers/opengl/renderer | |
parent | 99cc24f53ed2946494d3e8d594a6722c571a282f (diff) |
Allow multiple instances of a few render states
Allow more than one instance of BlendEquationArgumentsMask and
ClipPlaneMask render states.
Task-number: QTBUG-77735
Change-Id: I9d2bdc82843e2eaf0f8a781208e4ca10e3a777c7
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/renderers/opengl/renderer')
-rw-r--r-- | src/render/renderers/opengl/renderer/renderview.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/render/renderers/opengl/renderer/renderview.cpp b/src/render/renderers/opengl/renderer/renderview.cpp index 62758bb53..09099ee02 100644 --- a/src/render/renderers/opengl/renderer/renderview.cpp +++ b/src/render/renderers/opengl/renderer/renderview.cpp @@ -603,7 +603,7 @@ QVector<RenderCommand *> RenderView::buildDrawRenderCommands(const QVector<Entit RenderPass *pass = passData.pass; if (pass->hasRenderStates()) { command->m_stateSet = new RenderStateSet(); - addUniqueStatesToRenderStateSet(command->m_stateSet, pass->renderStates(), m_manager->renderStateManager()); + addStatesToRenderStateSet(command->m_stateSet, pass->renderStates(), m_manager->renderStateManager()); if (m_stateSet != nullptr) command->m_stateSet->merge(m_stateSet); command->m_changeCost = m_renderer->defaultRenderState()->changeCost(command->m_stateSet); @@ -723,7 +723,7 @@ QVector<RenderCommand *> RenderView::buildComputeRenderCommands(const QVector<En if (pass->hasRenderStates()) { command->m_stateSet = new RenderStateSet(); - addUniqueStatesToRenderStateSet(command->m_stateSet, pass->renderStates(), m_manager->renderStateManager()); + addStatesToRenderStateSet(command->m_stateSet, pass->renderStates(), m_manager->renderStateManager()); // Merge per pass stateset with global stateset // so that the local stateset only overrides |