Branch libreoffice-5-0-4
[LibreOffice.git] / vcl / opengl / convolutionFragmentShader.glsl
blobd4f78027faa3871ac64e873515845c38d0355b77
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
10 /* TODO Use textureOffset for newest version of GLSL */
12 uniform sampler2D sampler;
13 uniform vec2 offsets[16];
14 uniform float kernel[16];
16 varying vec2 tex_coord;
18 void main(void)
20     vec4 sum = texture2D(sampler, tex_coord.st) * kernel[0];
21     for (int i = 1; i < 16; i++) {
22         sum += texture2D(sampler, tex_coord.st - offsets[i]) * kernel[i];
23         sum += texture2D(sampler, tex_coord.st + offsets[i]) * kernel[i];
24     }
25     gl_FragColor = sum;
28 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */