From 23b0faeba55dae02cacb29a0f37c13535993bb0c Mon Sep 17 00:00:00 2001 From: degasus Date: Thu, 29 Dec 2016 18:03:22 +0100 Subject: OGL: Use VideoCommon blend state for framebuffer configuration. --- Source/Core/VideoCommon/BPStructs.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'Source/Core/VideoCommon/BPStructs.cpp') 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); -- cgit v1.2.3