summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/BPStructs.cpp
diff options
context:
space:
mode:
authorPokechu22 <Pokechu022@gmail.com>2021-11-12 11:48:26 -0800
committerPokechu22 <Pokechu022@gmail.com>2022-04-16 10:26:11 -0700
commit076392a0f65fa11b8c3475b762b8b9794057ae11 (patch)
treeae10646ee55e4774e31a3441c7ca23c1864d1454 /Source/Core/VideoCommon/BPStructs.cpp
parent4595b89ad80ce2384d188de802ee03a183eb5905 (diff)
VideoCommon: Rework scissor handling
This increases accuracy, fixing the white rendering in Major Minor's Majestic March. However, the hardware backends can only have one viewport and scissor rectangle at a time, while sometimes multiple are needed to accurately emulate what is happening. If possible, this will need to be fixed later.
Diffstat (limited to 'Source/Core/VideoCommon/BPStructs.cpp')
-rw-r--r--Source/Core/VideoCommon/BPStructs.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/BPStructs.cpp b/Source/Core/VideoCommon/BPStructs.cpp
index 7e5ecf1689..c6746d444a 100644
--- a/Source/Core/VideoCommon/BPStructs.cpp
+++ b/Source/Core/VideoCommon/BPStructs.cpp
@@ -131,8 +131,6 @@ static void BPWritten(const BPCmd& bp, int cycles_into_future)
case BPMEM_SCISSORTL: // Scissor Rectable Top, Left
case BPMEM_SCISSORBR: // Scissor Rectable Bottom, Right
case BPMEM_SCISSOROFFSET: // Scissor Offset
- SetScissor();
- SetViewport();
VertexShaderManager::SetViewportChanged();
GeometryShaderManager::SetViewportChanged();
return;
@@ -1272,8 +1270,7 @@ void BPReload()
// let's not risk actually replaying any writes.
// note that PixelShaderManager is already covered since it has its own DoState.
SetGenerationMode();
- SetScissor();
- SetViewport();
+ SetScissorAndViewport();
SetDepthMode();
SetBlendMode();
OnPixelFormatChange();