/usr/share/psychtoolbox-3/PsychOpenGL/PsychGLSLShaders/ApertureSineGratingShader.frag.txt is in psychtoolbox-3-common 3.0.11.20131230.dfsg1-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | /*
* File: ApertureSineGratingShader.frag.txt
* Shader for drawing of basic parameterized sine grating patches.
* Applies a circular aperture of radius 'Radius'.
*
* (c) 2010 by Mario Kleiner, licensed under MIT license.
*
*/
uniform float Radius;
uniform vec2 Center;
uniform vec4 Offset;
varying vec4 baseColor;
varying float Phase;
varying float FreqTwoPi;
void main()
{
/* Query current output texel position: */
vec2 pos = gl_TexCoord[0].xy;
/* If distance to center (aka radius of pixel) > Radius, discard this pixel: */
if (distance(pos, Center) > Radius) discard;
/* Evaluate sine grating at requested position, frequency and phase: */
float sv = sin(pos.x * FreqTwoPi + Phase);
/* Multiply/Modulate base color and alpha with calculated sine */
/* values, add some constant color/alpha Offset, assign as final fragment */
/* output color: */
gl_FragColor = (baseColor * sv) + Offset;
}
|