28 lines
632 B
GLSL
28 lines
632 B
GLSL
#version 440
|
|
layout(location = 0) in vec2 qt_TexCoord0;
|
|
layout(location = 0) out vec4 fragColor;
|
|
layout(std140, binding = 0) uniform buf {
|
|
mat4 qt_Matrix;
|
|
float qt_Opacity;
|
|
};
|
|
layout(binding = 1) uniform sampler2D shadow;
|
|
layout(binding = 2) uniform sampler2D original;
|
|
|
|
void main() {
|
|
vec4 o = texture(original, qt_TexCoord0); // original
|
|
|
|
if (o.a == 0)
|
|
discard;
|
|
|
|
vec4 s = texture(shadow, qt_TexCoord0); // shadow
|
|
|
|
if (s.a == 0)
|
|
discard;
|
|
|
|
fragColor = s;
|
|
//} else {
|
|
// fragColor.rgb = mix(s.rgb, o.rgb, (1.0 - s.a));
|
|
// fragColor.a = s.a + (o.a * (1.0 - s.a));
|
|
//}
|
|
}
|