summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/BPStructs.cpp
diff options
context:
space:
mode:
authordegasus <wickmarkus@web.de>2016-12-29 18:03:22 +0100
committerdegasus <wickmarkus@web.de>2017-01-06 14:01:39 +0100
commit23b0faeba55dae02cacb29a0f37c13535993bb0c (patch)
tree6b7d2e96234438d2560c7c8ab186753c135ee10b /Source/Core/VideoCommon/BPStructs.cpp
parent3df828463d74645884414d5cc994e1fda4de6c67 (diff)
OGL: Use VideoCommon blend state for framebuffer configuration.
Diffstat (limited to 'Source/Core/VideoCommon/BPStructs.cpp')
-rw-r--r--Source/Core/VideoCommon/BPStructs.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/BPStructs.cpp b/Source/Core/VideoCommon/BPStructs.cpp
index 5bd1b6027f..56bce65c27 100644
--- a/Source/Core/VideoCommon/BPStructs.cpp
+++ b/Source/Core/VideoCommon/BPStructs.cpp
@@ -142,6 +142,10 @@ static void BPWritten(const BPCmd& bp)
(int)bpmem.blendmode.dstfactor, (int)bpmem.blendmode.srcfactor,
(int)bpmem.blendmode.subtract, (int)bpmem.blendmode.logicmode);
+ // Set Blending Mode
+ if (bp.changes)
+ SetBlendMode();
+
// Set LogicOp Blending Mode
if (bp.changes & 0xF002) // logicopenable | logicmode
SetLogicOpMode();
@@ -150,10 +154,6 @@ static void BPWritten(const BPCmd& bp)
if (bp.changes & 4) // dither
SetDitherMode();
- // Set Blending Mode
- if (bp.changes & 0xFF1) // blendenable | alphaupdate | dstfactor | srcfactor | subtract
- SetBlendMode();
-
// Set Color Mask
if (bp.changes & 0x18) // colorupdate | alphaupdate
SetColorMask();
@@ -316,7 +316,10 @@ static void BPWritten(const BPCmd& bp)
if (bp.changes & 0xFFFF)
PixelShaderManager::SetAlpha();
if (bp.changes)
+ {
g_renderer->SetColorMask();
+ SetBlendMode();
+ }
return;
case BPMEM_BIAS: // BIAS
PRIM_LOG("ztex bias=0x%x", bpmem.ztex1.bias);