
Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
const int MAX = 1000+1;
uniform float psf[MAX];
uniform int n;
uniform vec2 dxy;
uniform vec2 twh;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture(tex, tc);
        float c = color.r, f = c*psf[0];
        for( int i=1; i<n; ++i ) {
                vec2 dd = float(i)*dxy;
                vec2 a = tc+dd, ac = min(max(vec2(0.),a), twh);
                vec2 b = tc-dd, bc = min(max(vec2(0.),b), twh);
                float fa = texture2D(tex, ac).r * psf[i];
                float fb = texture2D(tex, bc).r * psf[i];
                float m = max(fa, fb);
                if( f < m ) f = m;
        }
        if( c < f ) color = vec4(f);
}

void main() {
        main000();
}

0:18(13): error: no function with name 'texture2D'
0:18(13): error: type mismatch
0:18(13): error: operands to arithmetic operators must be numeric
0:19(13): error: no function with name 'texture2D'
0:19(13): error: type mismatch
0:19(13): error: operands to arithmetic operators must be numeric
0:20(16): warning: `fa' used uninitialized
0:20(20): warning: `fb' used uninitialized

Playback3D::print_error:
#version 430
layout(location=0) out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex1;
uniform float r;
uniform float v;

void main000() {
        vec2 tc = gl_FragCoord.xy/textureSize(tex,0);
        color = texture2D(tex1, tc);
        float c = texture2D(tex, tc).r;
        float b = r<0 ? 1. : 0.;
        if( c == b ) return;
        float iv = v>=0. ? 1. : -1.;
        float rr = r!=0. ? r : 1.;
        float rv = rr*v>=0. ? 1. : -1.;
        float vv = v>=0. ? 1.-v : 1.+v;
        float fg = rv>0. ? vv : 1.;
        float bg = rv>0. ? 1. : vv;
        float a = c*fg + (1.-c)*bg;
        if( iv*(color.a-a) > 0. ) color = vec4(a);
}

void main() {
        main000();
}

0:10(10): error: no function with name 'texture2D'
0:11(12): error: no function with name 'texture2D'
0:11(12): error: type mismatch
0:13(6): warning: `c' used uninitialized
0:20(12): warning: `c' used uninitialized
0:20(23): warning: `c' used uninitialized





