diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2016-08-09 12:16:31 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2016-08-09 13:12:29 +0000 |
commit | 7039248b768179db49ff09508c4ce09bef345160 (patch) | |
tree | e327675f9a60ebb270d94d7a72febb56d046a97d /src/render/renderstates/renderstateset.cpp | |
parent | 0045f1cfdfe669dd4f9c5f78d4d7dab153e2a17b (diff) |
RenderStateSet remove cache delta variables
These aren't needed and were part of an older logic.
Change-Id: I3550b8c5b781ea6606b233d93a5debeb6739cc20
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/renderstates/renderstateset.cpp')
-rw-r--r-- | src/render/renderstates/renderstateset.cpp | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/src/render/renderstates/renderstateset.cpp b/src/render/renderstates/renderstateset.cpp index ffe7f6ee8..992d649e8 100644 --- a/src/render/renderstates/renderstateset.cpp +++ b/src/render/renderstates/renderstateset.cpp @@ -94,7 +94,6 @@ namespace Render { RenderStateSet::RenderStateSet() : m_stateMask(0) - , m_cachedPrevious(0) { } @@ -153,24 +152,15 @@ void RenderStateSet::apply(GraphicsContext *gc) } qCDebug(RenderStates) << " current states " << QString::number(stateMask(), 2) << "inverse " << QString::number(invOurState, 2) << " -> states to change: " << QString::number(stateToReset, 2); + // Reset states that aren't active in the current state set resetMasked(stateToReset, gc); - if (m_cachedPrevious && previousStates == m_cachedPrevious) { - // state-change cache hit - for (const StateVariant &ds : qAsConst(m_cachedDeltaStates)) - ds.apply(gc); - } else { - // compute deltas and cache for next frame - m_cachedDeltaStates.clear(); - m_cachedPrevious = previousStates; - - for (const StateVariant &ds : qAsConst(m_states)) { - if (previousStates && previousStates->contains(ds)) - continue; - - m_cachedDeltaStates.push_back(ds); - ds.apply(gc); - } + // Apply states that weren't in the previous state or that have + // different values + for (const StateVariant &ds : qAsConst(m_states)) { + if (previousStates && previousStates->contains(ds)) + continue; + ds.apply(gc); } } |