summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_state_tracker.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_state_tracker.cpp22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/video_core/renderer_opengl/gl_state_tracker.cpp b/src/video_core/renderer_opengl/gl_state_tracker.cpp
index 572a43856..319fd825b 100644
--- a/src/video_core/renderer_opengl/gl_state_tracker.cpp
+++ b/src/video_core/renderer_opengl/gl_state_tracker.cpp
@@ -110,23 +110,23 @@ StateTracker::StateTracker(Core::System& system) : system{system} {}
void StateTracker::Initialize() {
auto& dirty = system.GPU().Maxwell3D().dirty;
- std::size_t entry_index = 0;
- const auto AddEntry = [&dirty, &entry_index](std::size_t dirty_register) {
- dirty.on_write_stores[entry_index++] = static_cast<u8>(dirty_register);
- };
-
- AddEntry(RenderTargets);
- for (std::size_t i = 0; i < Regs::NumRenderTargets; ++i) {
- AddEntry(ColorBuffer0 + i);
- }
- AddEntry(ZetaBuffer);
-
auto& tables = dirty.tables;
SetupDirtyRenderTargets(tables);
SetupDirtyColorMasks(tables);
SetupDirtyViewports(tables);
SetupDirtyScissors(tables);
SetupDirtyVertexFormat(tables);
+
+ auto& store = dirty.on_write_stores;
+ store[RenderTargets] = true;
+ store[ZetaBuffer] = true;
+ for (std::size_t i = 0; i < Regs::NumRenderTargets; ++i) {
+ store[ColorBuffer0 + i] = true;
+ }
+ store[VertexBuffers] = true;
+ for (std::size_t i = 0; i < Regs::NumVertexArrays; ++i) {
+ store[VertexBuffer0 + i] = true;
+ }
}
} // namespace OpenGL