kwin: Fix the glBlendFunc() in the shader case.

The RGB values were being multiplied by the alpha value twice.
This commit is contained in:
Fredrik Höglund 2011-02-04 21:44:50 +01:00
parent 8bc586e613
commit 2a6a4e9667

View file

@ -723,7 +723,7 @@ void SceneOpenGL::Window::prepareShaderRenderStates(TextureType type, double opa
if (!opaque) { if (!opaque) {
glEnable(GL_BLEND); glEnable(GL_BLEND);
if (alpha) { if (alpha) {
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
} else { } else {
glBlendColor((float)opacity, (float)opacity, (float)opacity, (float)opacity); glBlendColor((float)opacity, (float)opacity, (float)opacity, (float)opacity);
glBlendFunc(GL_ONE, GL_ONE_MINUS_CONSTANT_ALPHA); glBlendFunc(GL_ONE, GL_ONE_MINUS_CONSTANT_ALPHA);