summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/Render.cpp
diff options
context:
space:
mode:
authorJules Blok <jules.blok@gmail.com>2016-10-10 17:19:00 +0200
committerJules Blok <jules.blok@gmail.com>2016-10-10 17:32:51 +0200
commitab5054c34e8fc528fc5808d7f8254a6cdd89a376 (patch)
tree9b4c0dbebc10a946c0c61a2d2852b172b9b7a022 /Source/Core/VideoBackends/OGL/Render.cpp
parent93109df65409dd9ba4fe21e9f0753204904aa913 (diff)
VideoBackends: Always enable dual-source blending if supported.
Diffstat (limited to 'Source/Core/VideoBackends/OGL/Render.cpp')
-rw-r--r--Source/Core/VideoBackends/OGL/Render.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/Source/Core/VideoBackends/OGL/Render.cpp b/Source/Core/VideoBackends/OGL/Render.cpp
index 047ac0f69e..2c30f4f62c 100644
--- a/Source/Core/VideoBackends/OGL/Render.cpp
+++ b/Source/Core/VideoBackends/OGL/Render.cpp
@@ -1241,7 +1241,7 @@ void Renderer::SetBlendMode(bool forceUpdate)
bool target_has_alpha = bpmem.zcontrol.pixel_format == PEControl::RGBA6_Z24;
bool useDstAlpha = bpmem.dstalpha.enable && bpmem.blendmode.alphaupdate && target_has_alpha;
- bool useDualSource = useDstAlpha && g_ActiveConfig.backend_info.bSupportsDualSourceBlend;
+ bool useDualSource = g_ActiveConfig.backend_info.bSupportsDualSourceBlend;
const GLenum glSrcFactors[8] = {
GL_ZERO,
@@ -1269,7 +1269,7 @@ void Renderer::SetBlendMode(bool forceUpdate)
// 3-5 - srcRGB function
// 6-8 - dstRGB function
- u32 newval = useDualSource << 1;
+ u32 newval = useDstAlpha << 1;
newval |= bpmem.blendmode.subtract << 2;
if (bpmem.blendmode.subtract)
@@ -1295,7 +1295,7 @@ void Renderer::SetBlendMode(bool forceUpdate)
{
// subtract enable change
GLenum equation = newval & 4 ? GL_FUNC_REVERSE_SUBTRACT : GL_FUNC_ADD;
- GLenum equationAlpha = useDualSource ? GL_FUNC_ADD : equation;
+ GLenum equationAlpha = useDstAlpha ? GL_FUNC_ADD : equation;
glBlendEquationSeparate(equation, equationAlpha);
}
@@ -1308,7 +1308,7 @@ void Renderer::SetBlendMode(bool forceUpdate)
GLenum dstFactor = glDestFactors[dstidx];
// adjust alpha factors
- if (useDualSource)
+ if (useDstAlpha)
{
srcidx = BlendMode::ONE;
dstidx = BlendMode::ZERO;