File: outline.frag

package info (click to toggle)
qtdeclarative-opensource-src-gles 5.15.15%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 258,796 kB
  • sloc: javascript: 512,412; cpp: 497,152; xml: 8,892; python: 3,304; ansic: 2,764; sh: 206; makefile: 46; php: 27
file content (16 lines) | stat: -rw-r--r-- 623 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
uniform sampler2D source;
uniform highp vec2 delta;
uniform highp float qt_Opacity;

varying highp vec2 qt_TexCoord0;

void main() {
    lowp vec4 tl = texture2D(source, qt_TexCoord0 - delta);
    lowp vec4 tr = texture2D(source, qt_TexCoord0 + vec2(delta.x, -delta.y));
    lowp vec4 bl = texture2D(source, qt_TexCoord0 - vec2(delta.x, -delta.y));
    lowp vec4 br = texture2D(source, qt_TexCoord0 + delta);
    mediump vec4 gx = (tl + bl) - (tr + br);
    mediump vec4 gy = (tl + tr) - (bl + br);
    gl_FragColor.xyz = vec3(0.);
    gl_FragColor.w = clamp(dot(sqrt(gx * gx + gy * gy), vec4(1.)), 0., 1.) * qt_Opacity;
}