diff --git a/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h b/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h index 23c31a1bb7..7d309dee38 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h +++ b/Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h @@ -124,6 +124,11 @@ extern CGprofile g_cgvProf, g_cgfProf; // XXX: Dual-source blending in OpenGL does not work correctly yet. To make it // work, we may need to use glBindFragDataLocation. To use that, we need to // use GLSL shaders across the whole pipeline. Yikes! -//#define USE_DUAL_SOURCE_BLEND +#define USE_DUAL_SOURCE_BLEND + +// Can't get defined on my system for some reason... +#ifndef GL_ONE_MINUS_SRC1_ALPHA +#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB +#endif #endif // _GLINIT_H_ diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp index ae99669636..fe9f9e7822 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp @@ -937,8 +937,8 @@ void Renderer::SetBlendMode(bool forceUpdate) #ifdef USE_DUAL_SOURCE_BLEND bool useDstAlpha = !g_ActiveConfig.bDstAlphaPass && bpmem.dstalpha.enable && bpmem.blendmode.alphaupdate - && bpmem.zcontrol.pixel_format == PIXELFMT_RGBA6_Z24; - bool useDualSource = useDstAlpha && GLEW_ARB_blend_func_extended; + && bpmem.zcontrol.pixel_format == PIXELFMT_RGBA6_Z24 && g_ActiveConfig.bUseGLSL; + bool useDualSource = useDstAlpha; #endif if (changes & 1)