Merge pull request #3510 from FernandoS27/dirty-write
DirtyFlags: relax need to set render_targets as dirty
This commit is contained in:
commit
edb9cccb36
|
@ -15,14 +15,6 @@ namespace VideoCommon::Dirty {
|
||||||
|
|
||||||
using Tegra::Engines::Maxwell3D;
|
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) {
|
void SetupDirtyRenderTargets(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables) {
|
||||||
static constexpr std::size_t num_per_rt = NUM(rt[0]);
|
static constexpr std::size_t num_per_rt = NUM(rt[0]);
|
||||||
static constexpr std::size_t begin = OFF(rt);
|
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);
|
FillBlock(tables[1], begin, num, index_b);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetupCommonOnWriteStores(Tegra::Engines::Maxwell3D::DirtyState::Flags& store);
|
|
||||||
|
|
||||||
void SetupDirtyRenderTargets(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables);
|
void SetupDirtyRenderTargets(Tegra::Engines::Maxwell3D::DirtyState::Tables& tables);
|
||||||
|
|
||||||
} // namespace VideoCommon::Dirty
|
} // namespace VideoCommon::Dirty
|
||||||
|
|
|
@ -238,7 +238,6 @@ void StateTracker::Initialize() {
|
||||||
SetupDirtyMisc(tables);
|
SetupDirtyMisc(tables);
|
||||||
|
|
||||||
auto& store = dirty.on_write_stores;
|
auto& store = dirty.on_write_stores;
|
||||||
SetupCommonOnWriteStores(store);
|
|
||||||
store[VertexBuffers] = true;
|
store[VertexBuffers] = true;
|
||||||
for (std::size_t i = 0; i < Regs::NumVertexArrays; ++i) {
|
for (std::size_t i = 0; i < Regs::NumVertexArrays; ++i) {
|
||||||
store[VertexBuffer0 + i] = true;
|
store[VertexBuffer0 + i] = true;
|
||||||
|
|
|
@ -90,8 +90,6 @@ void StateTracker::Initialize() {
|
||||||
SetupDirtyBlendConstants(tables);
|
SetupDirtyBlendConstants(tables);
|
||||||
SetupDirtyDepthBounds(tables);
|
SetupDirtyDepthBounds(tables);
|
||||||
SetupDirtyStencilProperties(tables);
|
SetupDirtyStencilProperties(tables);
|
||||||
|
|
||||||
SetupCommonOnWriteStores(dirty.on_write_stores);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void StateTracker::InvalidateCommandBufferState() {
|
void StateTracker::InvalidateCommandBufferState() {
|
||||||
|
|
Reference in New Issue