File: image.comp

package info (click to toggle)
qtbase-opensource-src-gles 5.15.17%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 349,996 kB
  • sloc: cpp: 2,097,620; ansic: 343,242; xml: 115,491; python: 9,447; java: 7,499; asm: 4,023; sh: 2,086; perl: 2,047; yacc: 1,687; lex: 1,333; javascript: 878; makefile: 260; objc: 70
file content (20 lines) | stat: -rw-r--r-- 542 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#version 440

layout (local_size_x = 16, local_size_y = 16) in;

layout(std140, binding = 0) uniform UniformBuffer
{
    float factor;
} ubuf;

layout (binding = 1, rgba8) uniform readonly image2D texIn;
layout (binding = 2, rgba8) uniform writeonly image2D texOut;

void main()
{
    ivec2 pos = ivec2(gl_GlobalInvocationID.xy);
    ivec2 d = ivec2(1, 1);
    vec4 diff = imageLoad(texIn, pos + d) - imageLoad(texIn, pos - d);
    float c = (diff.x + diff.y + diff.z) / ubuf.factor + 0.5f;
    imageStore(texOut, pos, vec4(c, c, c, 1.0));
}