Browse Source
Merge pull request #3510 from FernandoS27/dirty-write
DirtyFlags: relax need to set render_targets as dirty
pull/15/merge
Mat M
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
0 additions and
13 deletions
-
src/video_core/dirty_flags.cpp
-
src/video_core/dirty_flags.h
-
src/video_core/renderer_opengl/gl_state_tracker.cpp
-
src/video_core/renderer_vulkan/vk_state_tracker.cpp
|
|
|
@ -15,14 +15,6 @@ namespace VideoCommon::Dirty { |
|
|
|
|
|
|
|
using Tegra::Engines::Maxwell3D; |
|
|
|
|
|
|
|
void SetupCommonOnWriteStores(Tegra::Engines::Maxwell3D::DirtyState::Flags& store) { |
|
|
|
store[RenderTargets] = true; |
|
|
|
store[ZetaBuffer] = true; |
|
|
|
for (std::size_t i = 0; i < Maxwell3D::Regs::NumRenderTargets; ++i) { |
|
|
|
store[ColorBuffer0 + i] = true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void SetupDirtyRenderTargets(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables) { |
|
|
|
static constexpr std::size_t num_per_rt = NUM(rt[0]); |
|
|
|
static constexpr std::size_t begin = OFF(rt); |
|
|
|
|
|
|
|
@ -44,8 +44,6 @@ void FillBlock(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables, std::size_ |
|
|
|
FillBlock(tables[1], begin, num, index_b); |
|
|
|
} |
|
|
|
|
|
|
|
void SetupCommonOnWriteStores(Tegra::Engines::Maxwell3D::DirtyState::Flags& store); |
|
|
|
|
|
|
|
void SetupDirtyRenderTargets(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables); |
|
|
|
|
|
|
|
} // namespace VideoCommon::Dirty |
|
|
|
@ -238,7 +238,6 @@ void StateTracker::Initialize() { |
|
|
|
SetupDirtyMisc(tables); |
|
|
|
|
|
|
|
auto& store = dirty.on_write_stores; |
|
|
|
SetupCommonOnWriteStores(store); |
|
|
|
store[VertexBuffers] = true; |
|
|
|
for (std::size_t i = 0; i < Regs::NumVertexArrays; ++i) { |
|
|
|
store[VertexBuffer0 + i] = true; |
|
|
|
|
|
|
|
@ -90,8 +90,6 @@ void StateTracker::Initialize() { |
|
|
|
SetupDirtyBlendConstants(tables); |
|
|
|
SetupDirtyDepthBounds(tables); |
|
|
|
SetupDirtyStencilProperties(tables); |
|
|
|
|
|
|
|
SetupCommonOnWriteStores(dirty.on_write_stores); |
|
|
|
} |
|
|
|
|
|
|
|
void StateTracker::InvalidateCommandBufferState() { |
|
|
|
|