Merge pull request #14134 from jherico/fix/fb19088

Fix avatar thumbnails
This commit is contained in:
Brad Hefta-Gaub 2018-10-03 09:01:33 -07:00 committed by GitHub
commit bb78a8dd5c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 57 additions and 14 deletions

View file

@ -0,0 +1,43 @@
import QtQuick 2.0
Item {
property alias source: sourceImage.sourceItem
property alias maskSource: sourceMask.sourceItem
anchors.fill: parent
ShaderEffectSource {
id: sourceMask
smooth: true
hideSource: true
}
ShaderEffectSource {
id: sourceImage
hideSource: true
}
ShaderEffect {
id: maskEffect
anchors.fill: parent
property variant source: sourceImage
property variant mask: sourceMask
fragmentShader: {
"
varying highp vec2 qt_TexCoord0;
uniform lowp sampler2D source;
uniform lowp sampler2D mask;
void main() {
highp vec4 maskColor = texture2D(mask, vec2(qt_TexCoord0.x, qt_TexCoord0.y));
highp vec4 sourceColor = texture2D(source, vec2(qt_TexCoord0.x, qt_TexCoord0.y));
if (maskColor.a > 0.0)
gl_FragColor = sourceColor;
else
gl_FragColor = maskColor;
}
"
}
}
}

View file

@ -24,19 +24,19 @@ Item {
fragmentShader: { fragmentShader: {
" "
#version 150 core #version 410
varying highp vec2 qt_TexCoord0; in vec2 qt_TexCoord0;
uniform lowp sampler2D source; out vec4 color;
uniform lowp sampler2D mask; uniform sampler2D source;
void main() { uniform sampler2D mask;
void main()
highp vec4 maskColor = texture2D(mask, vec2(qt_TexCoord0.x, qt_TexCoord0.y)); {
highp vec4 sourceColor = texture2D(source, vec2(qt_TexCoord0.x, qt_TexCoord0.y)); vec4 maskColor = texture(mask, vec2(qt_TexCoord0.x, qt_TexCoord0.y));
vec4 sourceColor = texture(source, vec2(qt_TexCoord0.x, qt_TexCoord0.y));
if (maskColor.a > 0.0) if (maskColor.a > 0.0)
gl_FragColor = sourceColor; color = sourceColor;
else else
gl_FragColor = maskColor; color = maskColor;
} }
" "
} }