add precompiled shaders that look and work well

This commit is contained in:
Tim Felgentreff 2016-05-26 01:57:32 +02:00
parent 8d4c747023
commit 37a7391883
37 changed files with 13961 additions and 0 deletions

View file

@ -0,0 +1,339 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0005;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec3 _TMP3;
vec3 _TMP2;
vec3 _TMP1;
vec3 _TMP0;
vec3 _TMP10;
vec3 _TMP9;
vec3 _TMP8;
vec4 _TMP14;
float _TMP13;
float _TMP12;
input_dummy _IN1;
uniform sampler2D Texture;
vec2 _x0019;
float _x0021;
float _TMP22;
float _ax0023;
float _x0023;
float _TMP26;
float _ax0027;
float _x0027;
float _TMP30;
float _ax0031;
float _TMP34;
float _ax0035;
float _x0035;
float _x0039;
float _TMP40;
float _ax0041;
float _x0041;
float _TMP44;
float _ax0045;
float _x0045;
float _TMP48;
float _ax0049;
float _TMP52;
float _ax0053;
float _x0053;
vec2 _c0061;
vec2 _c0065;
vec2 _c0069;
vec2 _c0073;
float _ypos0075;
vec2 _c0079;
vec2 _c0083;
vec2 _c0087;
vec2 _c0091;
float _ypos0093;
vec2 _c0097;
vec2 _c0101;
vec2 _c0105;
vec2 _c0109;
float _ypos0111;
vec2 _c0115;
vec2 _c0119;
vec2 _c0123;
vec2 _c0127;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _stepxy;
vec2 _pos;
vec2 _f;
vec4 _linetaps1;
vec4 _columntaps;
vec2 _xystart;
vec4 _xpos2;
output_dummy _OUT;
vec3 _TMP17;
_stepxy = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_pos = TEX0.xy + _stepxy*5.00000000E-01;
_x0019 = _pos/_stepxy;
_f = fract(_x0019);
_x0021 = 1.00000000E+00 - _f.x;
_x0023 = _x0021 - 2.00000000E+00;
_ax0023 = abs(_x0023);
if (_ax0023 < 1.00000000E+00) {
_TMP12 = _x0023*_x0023;
_TMP22 = (_TMP12*(8.10000038E+00*_ax0023 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0023 >= 1.00000000E+00 && _ax0023 < 2.00000000E+00) {
_TMP13 = _x0023*_x0023;
_TMP22 = (_TMP13*(-3.09999990E+00*_ax0023 + 1.56000004E+01) + -2.52000008E+01*_ax0023 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP22 = 0.00000000E+00;
}
}
_x0027 = _x0021 - 1.00000000E+00;
_ax0027 = abs(_x0027);
if (_ax0027 < 1.00000000E+00) {
_TMP12 = _x0027*_x0027;
_TMP26 = (_TMP12*(8.10000038E+00*_ax0027 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0027 >= 1.00000000E+00 && _ax0027 < 2.00000000E+00) {
_TMP13 = _x0027*_x0027;
_TMP26 = (_TMP13*(-3.09999990E+00*_ax0027 + 1.56000004E+01) + -2.52000008E+01*_ax0027 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP26 = 0.00000000E+00;
}
}
_ax0031 = abs(_x0021);
if (_ax0031 < 1.00000000E+00) {
_TMP12 = _x0021*_x0021;
_TMP30 = (_TMP12*(8.10000038E+00*_ax0031 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0031 >= 1.00000000E+00 && _ax0031 < 2.00000000E+00) {
_TMP13 = _x0021*_x0021;
_TMP30 = (_TMP13*(-3.09999990E+00*_ax0031 + 1.56000004E+01) + -2.52000008E+01*_ax0031 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP30 = 0.00000000E+00;
}
}
_x0035 = _x0021 + 1.00000000E+00;
_ax0035 = abs(_x0035);
if (_ax0035 < 1.00000000E+00) {
_TMP12 = _x0035*_x0035;
_TMP34 = (_TMP12*(8.10000038E+00*_ax0035 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0035 >= 1.00000000E+00 && _ax0035 < 2.00000000E+00) {
_TMP13 = _x0035*_x0035;
_TMP34 = (_TMP13*(-3.09999990E+00*_ax0035 + 1.56000004E+01) + -2.52000008E+01*_ax0035 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP34 = 0.00000000E+00;
}
}
_linetaps1 = vec4(_TMP22, _TMP26, _TMP30, _TMP34);
_x0039 = 1.00000000E+00 - _f.y;
_x0041 = _x0039 - 2.00000000E+00;
_ax0041 = abs(_x0041);
if (_ax0041 < 1.00000000E+00) {
_TMP12 = _x0041*_x0041;
_TMP40 = (_TMP12*(8.10000038E+00*_ax0041 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0041 >= 1.00000000E+00 && _ax0041 < 2.00000000E+00) {
_TMP13 = _x0041*_x0041;
_TMP40 = (_TMP13*(-3.09999990E+00*_ax0041 + 1.56000004E+01) + -2.52000008E+01*_ax0041 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP40 = 0.00000000E+00;
}
}
_x0045 = _x0039 - 1.00000000E+00;
_ax0045 = abs(_x0045);
if (_ax0045 < 1.00000000E+00) {
_TMP12 = _x0045*_x0045;
_TMP44 = (_TMP12*(8.10000038E+00*_ax0045 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0045 >= 1.00000000E+00 && _ax0045 < 2.00000000E+00) {
_TMP13 = _x0045*_x0045;
_TMP44 = (_TMP13*(-3.09999990E+00*_ax0045 + 1.56000004E+01) + -2.52000008E+01*_ax0045 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP44 = 0.00000000E+00;
}
}
_ax0049 = abs(_x0039);
if (_ax0049 < 1.00000000E+00) {
_TMP12 = _x0039*_x0039;
_TMP48 = (_TMP12*(8.10000038E+00*_ax0049 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0049 >= 1.00000000E+00 && _ax0049 < 2.00000000E+00) {
_TMP13 = _x0039*_x0039;
_TMP48 = (_TMP13*(-3.09999990E+00*_ax0049 + 1.56000004E+01) + -2.52000008E+01*_ax0049 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP48 = 0.00000000E+00;
}
}
_x0053 = _x0039 + 1.00000000E+00;
_ax0053 = abs(_x0053);
if (_ax0053 < 1.00000000E+00) {
_TMP12 = _x0053*_x0053;
_TMP52 = (_TMP12*(8.10000038E+00*_ax0053 + -1.37999992E+01) + 5.80000019E+00)/6.00000000E+00;
} else {
if (_ax0053 >= 1.00000000E+00 && _ax0053 < 2.00000000E+00) {
_TMP13 = _x0053*_x0053;
_TMP52 = (_TMP13*(-3.09999990E+00*_ax0053 + 1.56000004E+01) + -2.52000008E+01*_ax0053 + 1.28000002E+01)/6.00000000E+00;
} else {
_TMP52 = 0.00000000E+00;
}
}
_columntaps = vec4(_TMP40, _TMP44, _TMP48, _TMP52);
_linetaps1 = _linetaps1/(_linetaps1.x + _linetaps1.y + _linetaps1.z + _linetaps1.w);
_columntaps = _columntaps/(_columntaps.x + _columntaps.y + _columntaps.z + _columntaps.w);
_xystart = (-1.50000000E+00 - _f)*_stepxy + _pos;
_xpos2 = vec4(_xystart.x, _xystart.x + _stepxy.x, _xystart.x + _stepxy.x*2.00000000E+00, _xystart.x + _stepxy.x*3.00000000E+00);
_c0061 = vec2(_xpos2.x, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0061);
_TMP8 = _TMP14.xyz;
_c0065 = vec2(_xpos2.y, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0065);
_TMP9 = _TMP14.xyz;
_c0069 = vec2(_xpos2.z, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0069);
_TMP10 = _TMP14.xyz;
_c0073 = vec2(_xpos2.w, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0073);
_TMP0 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0075 = _xystart.y + _stepxy.y;
_c0079 = vec2(_xpos2.x, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0079);
_TMP8 = _TMP14.xyz;
_c0083 = vec2(_xpos2.y, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0083);
_TMP9 = _TMP14.xyz;
_c0087 = vec2(_xpos2.z, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0087);
_TMP10 = _TMP14.xyz;
_c0091 = vec2(_xpos2.w, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0091);
_TMP1 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0093 = _xystart.y + _stepxy.y*2.00000000E+00;
_c0097 = vec2(_xpos2.x, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0097);
_TMP8 = _TMP14.xyz;
_c0101 = vec2(_xpos2.y, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0101);
_TMP9 = _TMP14.xyz;
_c0105 = vec2(_xpos2.z, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0105);
_TMP10 = _TMP14.xyz;
_c0109 = vec2(_xpos2.w, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0109);
_TMP2 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0111 = _xystart.y + _stepxy.y*3.00000000E+00;
_c0115 = vec2(_xpos2.x, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0115);
_TMP8 = _TMP14.xyz;
_c0119 = vec2(_xpos2.y, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0119);
_TMP9 = _TMP14.xyz;
_c0123 = vec2(_xpos2.z, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0123);
_TMP10 = _TMP14.xyz;
_c0127 = vec2(_xpos2.w, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0127);
_TMP3 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_TMP17 = _TMP0*_columntaps.x + _TMP1*_columntaps.y + _TMP2*_columntaps.z + _TMP3*_columntaps.w;
_OUT._color = vec4(_TMP17.x, _TMP17.y, _TMP17.z, 1.00000000E+00);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,339 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0005;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec3 _TMP3;
vec3 _TMP2;
vec3 _TMP1;
vec3 _TMP0;
vec3 _TMP10;
vec3 _TMP9;
vec3 _TMP8;
vec4 _TMP14;
float _TMP13;
float _TMP12;
input_dummy _IN1;
uniform sampler2D Texture;
vec2 _x0019;
float _x0021;
float _TMP22;
float _ax0023;
float _x0023;
float _TMP26;
float _ax0027;
float _x0027;
float _TMP30;
float _ax0031;
float _TMP34;
float _ax0035;
float _x0035;
float _x0039;
float _TMP40;
float _ax0041;
float _x0041;
float _TMP44;
float _ax0045;
float _x0045;
float _TMP48;
float _ax0049;
float _TMP52;
float _ax0053;
float _x0053;
vec2 _c0061;
vec2 _c0065;
vec2 _c0069;
vec2 _c0073;
float _ypos0075;
vec2 _c0079;
vec2 _c0083;
vec2 _c0087;
vec2 _c0091;
float _ypos0093;
vec2 _c0097;
vec2 _c0101;
vec2 _c0105;
vec2 _c0109;
float _ypos0111;
vec2 _c0115;
vec2 _c0119;
vec2 _c0123;
vec2 _c0127;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _stepxy;
vec2 _pos;
vec2 _f;
vec4 _linetaps1;
vec4 _columntaps;
vec2 _xystart;
vec4 _xpos2;
output_dummy _OUT;
vec3 _TMP17;
_stepxy = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_pos = TEX0.xy + _stepxy*5.00000000E-01;
_x0019 = _pos/_stepxy;
_f = fract(_x0019);
_x0021 = 1.00000000E+00 - _f.x;
_x0023 = _x0021 - 2.00000000E+00;
_ax0023 = abs(_x0023);
if (_ax0023 < 1.00000000E+00) {
_TMP12 = _x0023*_x0023;
_TMP22 = (_TMP12*(7.50000000E+00*_ax0023 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0023 >= 1.00000000E+00 && _ax0023 < 2.00000000E+00) {
_TMP13 = _x0023*_x0023;
_TMP22 = (_TMP13*(-4.50000000E+00*_ax0023 + 2.25000000E+01) + -3.60000000E+01*_ax0023 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP22 = 0.00000000E+00;
}
}
_x0027 = _x0021 - 1.00000000E+00;
_ax0027 = abs(_x0027);
if (_ax0027 < 1.00000000E+00) {
_TMP12 = _x0027*_x0027;
_TMP26 = (_TMP12*(7.50000000E+00*_ax0027 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0027 >= 1.00000000E+00 && _ax0027 < 2.00000000E+00) {
_TMP13 = _x0027*_x0027;
_TMP26 = (_TMP13*(-4.50000000E+00*_ax0027 + 2.25000000E+01) + -3.60000000E+01*_ax0027 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP26 = 0.00000000E+00;
}
}
_ax0031 = abs(_x0021);
if (_ax0031 < 1.00000000E+00) {
_TMP12 = _x0021*_x0021;
_TMP30 = (_TMP12*(7.50000000E+00*_ax0031 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0031 >= 1.00000000E+00 && _ax0031 < 2.00000000E+00) {
_TMP13 = _x0021*_x0021;
_TMP30 = (_TMP13*(-4.50000000E+00*_ax0031 + 2.25000000E+01) + -3.60000000E+01*_ax0031 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP30 = 0.00000000E+00;
}
}
_x0035 = _x0021 + 1.00000000E+00;
_ax0035 = abs(_x0035);
if (_ax0035 < 1.00000000E+00) {
_TMP12 = _x0035*_x0035;
_TMP34 = (_TMP12*(7.50000000E+00*_ax0035 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0035 >= 1.00000000E+00 && _ax0035 < 2.00000000E+00) {
_TMP13 = _x0035*_x0035;
_TMP34 = (_TMP13*(-4.50000000E+00*_ax0035 + 2.25000000E+01) + -3.60000000E+01*_ax0035 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP34 = 0.00000000E+00;
}
}
_linetaps1 = vec4(_TMP22, _TMP26, _TMP30, _TMP34);
_x0039 = 1.00000000E+00 - _f.y;
_x0041 = _x0039 - 2.00000000E+00;
_ax0041 = abs(_x0041);
if (_ax0041 < 1.00000000E+00) {
_TMP12 = _x0041*_x0041;
_TMP40 = (_TMP12*(7.50000000E+00*_ax0041 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0041 >= 1.00000000E+00 && _ax0041 < 2.00000000E+00) {
_TMP13 = _x0041*_x0041;
_TMP40 = (_TMP13*(-4.50000000E+00*_ax0041 + 2.25000000E+01) + -3.60000000E+01*_ax0041 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP40 = 0.00000000E+00;
}
}
_x0045 = _x0039 - 1.00000000E+00;
_ax0045 = abs(_x0045);
if (_ax0045 < 1.00000000E+00) {
_TMP12 = _x0045*_x0045;
_TMP44 = (_TMP12*(7.50000000E+00*_ax0045 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0045 >= 1.00000000E+00 && _ax0045 < 2.00000000E+00) {
_TMP13 = _x0045*_x0045;
_TMP44 = (_TMP13*(-4.50000000E+00*_ax0045 + 2.25000000E+01) + -3.60000000E+01*_ax0045 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP44 = 0.00000000E+00;
}
}
_ax0049 = abs(_x0039);
if (_ax0049 < 1.00000000E+00) {
_TMP12 = _x0039*_x0039;
_TMP48 = (_TMP12*(7.50000000E+00*_ax0049 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0049 >= 1.00000000E+00 && _ax0049 < 2.00000000E+00) {
_TMP13 = _x0039*_x0039;
_TMP48 = (_TMP13*(-4.50000000E+00*_ax0049 + 2.25000000E+01) + -3.60000000E+01*_ax0049 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP48 = 0.00000000E+00;
}
}
_x0053 = _x0039 + 1.00000000E+00;
_ax0053 = abs(_x0053);
if (_ax0053 < 1.00000000E+00) {
_TMP12 = _x0053*_x0053;
_TMP52 = (_TMP12*(7.50000000E+00*_ax0053 + -1.35000000E+01) + 6.00000000E+00)/6.00000000E+00;
} else {
if (_ax0053 >= 1.00000000E+00 && _ax0053 < 2.00000000E+00) {
_TMP13 = _x0053*_x0053;
_TMP52 = (_TMP13*(-4.50000000E+00*_ax0053 + 2.25000000E+01) + -3.60000000E+01*_ax0053 + 1.80000000E+01)/6.00000000E+00;
} else {
_TMP52 = 0.00000000E+00;
}
}
_columntaps = vec4(_TMP40, _TMP44, _TMP48, _TMP52);
_linetaps1 = _linetaps1/(_linetaps1.x + _linetaps1.y + _linetaps1.z + _linetaps1.w);
_columntaps = _columntaps/(_columntaps.x + _columntaps.y + _columntaps.z + _columntaps.w);
_xystart = (-1.50000000E+00 - _f)*_stepxy + _pos;
_xpos2 = vec4(_xystart.x, _xystart.x + _stepxy.x, _xystart.x + _stepxy.x*2.00000000E+00, _xystart.x + _stepxy.x*3.00000000E+00);
_c0061 = vec2(_xpos2.x, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0061);
_TMP8 = _TMP14.xyz;
_c0065 = vec2(_xpos2.y, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0065);
_TMP9 = _TMP14.xyz;
_c0069 = vec2(_xpos2.z, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0069);
_TMP10 = _TMP14.xyz;
_c0073 = vec2(_xpos2.w, _xystart.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0073);
_TMP0 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0075 = _xystart.y + _stepxy.y;
_c0079 = vec2(_xpos2.x, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0079);
_TMP8 = _TMP14.xyz;
_c0083 = vec2(_xpos2.y, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0083);
_TMP9 = _TMP14.xyz;
_c0087 = vec2(_xpos2.z, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0087);
_TMP10 = _TMP14.xyz;
_c0091 = vec2(_xpos2.w, _ypos0075);
_TMP14 = COMPAT_TEXTURE(Texture, _c0091);
_TMP1 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0093 = _xystart.y + _stepxy.y*2.00000000E+00;
_c0097 = vec2(_xpos2.x, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0097);
_TMP8 = _TMP14.xyz;
_c0101 = vec2(_xpos2.y, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0101);
_TMP9 = _TMP14.xyz;
_c0105 = vec2(_xpos2.z, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0105);
_TMP10 = _TMP14.xyz;
_c0109 = vec2(_xpos2.w, _ypos0093);
_TMP14 = COMPAT_TEXTURE(Texture, _c0109);
_TMP2 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_ypos0111 = _xystart.y + _stepxy.y*3.00000000E+00;
_c0115 = vec2(_xpos2.x, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0115);
_TMP8 = _TMP14.xyz;
_c0119 = vec2(_xpos2.y, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0119);
_TMP9 = _TMP14.xyz;
_c0123 = vec2(_xpos2.z, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0123);
_TMP10 = _TMP14.xyz;
_c0127 = vec2(_xpos2.w, _ypos0111);
_TMP14 = COMPAT_TEXTURE(Texture, _c0127);
_TMP3 = _TMP8*_linetaps1.x + _TMP9*_linetaps1.y + _TMP10*_linetaps1.z + _TMP14.xyz*_linetaps1.w;
_TMP17 = _TMP0*_columntaps.x + _TMP1*_columntaps.y + _TMP2*_columntaps.z + _TMP3*_columntaps.w;
_OUT._color = vec4(_TMP17.x, _TMP17.y, _TMP17.z, 1.00000000E+00);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,269 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord;
};
out_vertex _ret_0;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0008;
_ret_0._color1 = COLOR;
_ret_0._texCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0008;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
};
vec4 _ret_0;
float _TMP22;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
float _TMP23;
float _TMP24;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
float _TMP34;
vec2 _v0035;
vec2 _pt20035;
float _TMP42;
vec2 _v0043;
vec2 _pt20043;
float _TMP50;
vec2 _v0051;
vec2 _pt20051;
vec3 _res0059;
vec3 _x0059;
float _TMP60;
vec2 _v0061;
vec2 _pt20061;
float _TMP68;
vec2 _v0069;
float _TMP76;
vec2 _v0077;
vec2 _pt20077;
vec3 _res0085;
vec3 _x0085;
float _TMP86;
vec2 _v0087;
vec2 _pt20087;
float _TMP94;
vec2 _v0095;
vec2 _pt20095;
float _TMP102;
vec2 _v0103;
vec2 _pt20103;
vec3 _res0111;
vec3 _x0111;
vec2 _c0113;
vec2 _c0115;
vec2 _c0117;
vec2 _c0119;
vec2 _c0123;
vec2 _c0125;
vec2 _c0127;
vec2 _c0129;
vec3 _r0131;
vec3 _r0133;
vec3 _r0135;
vec3 _r0137;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _color;
vec2 _dx;
vec2 _dy;
vec2 _pc;
vec2 _tc;
_pc = TEX0.xy*TextureSize;
_TMP0 = floor(_pc);
_tc = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
_pt20035 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0035 = _pt20035 - _pc;
_TMP23 = dot(_v0035, _v0035);
_TMP24 = inversesqrt(_TMP23);
_TMP34 = 1.00000000E+00/_TMP24;
_pt20043 = _tc - vec2( 0.00000000E+00, 1.00000000E+00);
_v0043 = _pt20043 - _pc;
_TMP23 = dot(_v0043, _v0043);
_TMP24 = inversesqrt(_TMP23);
_TMP42 = 1.00000000E+00/_TMP24;
_pt20051 = (_tc + vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0051 = _pt20051 - _pc;
_TMP23 = dot(_v0051, _v0051);
_TMP24 = inversesqrt(_TMP23);
_TMP50 = 1.00000000E+00/_TMP24;
_x0059 = vec3(_TMP34, _TMP42, _TMP50);
_res0059 = vec3(_x0059.x <= 5.00000000E-01 ? ((-1.60000002E+00*_x0059)*_x0059 + 8.99999976E-01).x : _x0059.x <= 1.50000000E+00 ? (((8.00000012E-01*_x0059)*_x0059 + -2.09999990E+00*_x0059) + 1.34999990E+00).x : 0.00000000E+00, _x0059.y <= 5.00000000E-01 ? ((-1.60000002E+00*_x0059)*_x0059 + 8.99999976E-01).y : _x0059.y <= 1.50000000E+00 ? (((8.00000012E-01*_x0059)*_x0059 + -2.09999990E+00*_x0059) + 1.34999990E+00).y : 0.00000000E+00, _x0059.z <= 5.00000000E-01 ? ((-1.60000002E+00*_x0059)*_x0059 + 8.99999976E-01).z : _x0059.z <= 1.50000000E+00 ? (((8.00000012E-01*_x0059)*_x0059 + -2.09999990E+00*_x0059) + 1.34999990E+00).z : 0.00000000E+00);
_pt20061 = _tc - vec2( 1.00000000E+00, 0.00000000E+00);
_v0061 = _pt20061 - _pc;
_TMP23 = dot(_v0061, _v0061);
_TMP24 = inversesqrt(_TMP23);
_TMP60 = 1.00000000E+00/_TMP24;
_v0069 = _tc - _pc;
_TMP23 = dot(_v0069, _v0069);
_TMP24 = inversesqrt(_TMP23);
_TMP68 = 1.00000000E+00/_TMP24;
_pt20077 = _tc + vec2( 1.00000000E+00, 0.00000000E+00);
_v0077 = _pt20077 - _pc;
_TMP23 = dot(_v0077, _v0077);
_TMP24 = inversesqrt(_TMP23);
_TMP76 = 1.00000000E+00/_TMP24;
_x0085 = vec3(_TMP60, _TMP68, _TMP76);
_res0085 = vec3(_x0085.x <= 5.00000000E-01 ? ((-1.60000002E+00*_x0085)*_x0085 + 8.99999976E-01).x : _x0085.x <= 1.50000000E+00 ? (((8.00000012E-01*_x0085)*_x0085 + -2.09999990E+00*_x0085) + 1.34999990E+00).x : 0.00000000E+00, _x0085.y <= 5.00000000E-01 ? ((-1.60000002E+00*_x0085)*_x0085 + 8.99999976E-01).y : _x0085.y <= 1.50000000E+00 ? (((8.00000012E-01*_x0085)*_x0085 + -2.09999990E+00*_x0085) + 1.34999990E+00).y : 0.00000000E+00, _x0085.z <= 5.00000000E-01 ? ((-1.60000002E+00*_x0085)*_x0085 + 8.99999976E-01).z : _x0085.z <= 1.50000000E+00 ? (((8.00000012E-01*_x0085)*_x0085 + -2.09999990E+00*_x0085) + 1.34999990E+00).z : 0.00000000E+00);
_pt20087 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0087 = _pt20087 - _pc;
_TMP23 = dot(_v0087, _v0087);
_TMP24 = inversesqrt(_TMP23);
_TMP86 = 1.00000000E+00/_TMP24;
_pt20095 = _tc + vec2( 0.00000000E+00, 1.00000000E+00);
_v0095 = _pt20095 - _pc;
_TMP23 = dot(_v0095, _v0095);
_TMP24 = inversesqrt(_TMP23);
_TMP94 = 1.00000000E+00/_TMP24;
_pt20103 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0103 = _pt20103 - _pc;
_TMP23 = dot(_v0103, _v0103);
_TMP24 = inversesqrt(_TMP23);
_TMP102 = 1.00000000E+00/_TMP24;
_x0111 = vec3(_TMP86, _TMP94, _TMP102);
_res0111 = vec3(_x0111.x <= 5.00000000E-01 ? ((-1.60000002E+00*_x0111)*_x0111 + 8.99999976E-01).x : _x0111.x <= 1.50000000E+00 ? (((8.00000012E-01*_x0111)*_x0111 + -2.09999990E+00*_x0111) + 1.34999990E+00).x : 0.00000000E+00, _x0111.y <= 5.00000000E-01 ? ((-1.60000002E+00*_x0111)*_x0111 + 8.99999976E-01).y : _x0111.y <= 1.50000000E+00 ? (((8.00000012E-01*_x0111)*_x0111 + -2.09999990E+00*_x0111) + 1.34999990E+00).y : 0.00000000E+00, _x0111.z <= 5.00000000E-01 ? ((-1.60000002E+00*_x0111)*_x0111 + 8.99999976E-01).z : _x0111.z <= 1.50000000E+00 ? (((8.00000012E-01*_x0111)*_x0111 + -2.09999990E+00*_x0111) + 1.34999990E+00).z : 0.00000000E+00);
_dx = vec2( 1.00000000E+00, 0.00000000E+00)/TextureSize;
_dy = vec2( 0.00000000E+00, 1.00000000E+00)/TextureSize;
_tc = _tc/TextureSize;
_c0113 = (_tc - _dx) - _dy;
_TMP10 = COMPAT_TEXTURE(Texture, _c0113);
_c0115 = _tc - _dy;
_TMP11 = COMPAT_TEXTURE(Texture, _c0115);
_c0117 = (_tc + _dx) - _dy;
_TMP12 = COMPAT_TEXTURE(Texture, _c0117);
_c0119 = _tc - _dx;
_TMP13 = COMPAT_TEXTURE(Texture, _c0119);
_TMP14 = COMPAT_TEXTURE(Texture, _tc);
_c0123 = _tc + _dx;
_TMP15 = COMPAT_TEXTURE(Texture, _c0123);
_c0125 = (_tc - _dx) + _dy;
_TMP16 = COMPAT_TEXTURE(Texture, _c0125);
_c0127 = _tc + _dy;
_TMP17 = COMPAT_TEXTURE(Texture, _c0127);
_c0129 = _tc + _dx + _dy;
_TMP18 = COMPAT_TEXTURE(Texture, _c0129);
_r0131 = _res0059.x*_TMP10.xyz;
_r0131 = _r0131 + _res0059.y*_TMP11.xyz;
_r0131 = _r0131 + _res0059.z*_TMP12.xyz;
_r0133 = _res0085.x*_TMP13.xyz;
_r0133 = _r0133 + _res0085.y*_TMP14.xyz;
_r0133 = _r0133 + _res0085.z*_TMP15.xyz;
_color = _r0131 + _r0133;
_r0135 = _res0111.x*_TMP16.xyz;
_r0135 = _r0135 + _res0111.y*_TMP17.xyz;
_r0135 = _r0135 + _res0111.z*_TMP18.xyz;
_color = _color + _r0135;
_r0137.x = dot(_res0059, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0137.y = dot(_res0085, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0137.z = dot(_res0111, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP22 = dot(_r0137, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color = _color/_TMP22;
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

217
tools/shaders/bloom.cg.glsl Normal file
View file

@ -0,0 +1,217 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
vec4 _oPosition1;
vec4 _r0007;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0007 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0007 = _r0007 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0007 = _r0007 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0007 = _r0007 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0007;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0007;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
vec4 _TMP2;
vec4 _TMP1;
uniform sampler2D Texture;
vec2 _c0008;
vec3 _TMP9;
COMPAT_VARYING vec4 TEX0;
uniform vec2 _PixelOffsets[13];
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _pixel;
vec3 _Color;
output_dummy _OUT;
_c0008 = TEX0.xy + _PixelOffsets[0]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _pixel*2.21600011E-03;
_c0008 = TEX0.xy + _PixelOffsets[1]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*8.76399968E-03;
_c0008 = TEX0.xy + _PixelOffsets[2]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*2.69949995E-02;
_c0008 = TEX0.xy + _PixelOffsets[3]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*6.47590011E-02;
_c0008 = TEX0.xy + _PixelOffsets[4]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*1.20985001E-01;
_c0008 = TEX0.xy + _PixelOffsets[5]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*1.76033005E-01;
_c0008 = TEX0.xy + _PixelOffsets[6]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*1.99470997E-01;
_c0008 = TEX0.xy + _PixelOffsets[7]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*1.76033005E-01;
_c0008 = TEX0.xy + _PixelOffsets[8]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*1.20985001E-01;
_c0008 = TEX0.xy + _PixelOffsets[9]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*6.47590011E-02;
_c0008 = TEX0.xy + _PixelOffsets[10]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*2.69949995E-02;
_c0008 = TEX0.xy + _PixelOffsets[11]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*8.76399968E-03;
_c0008 = TEX0.xy + _PixelOffsets[12]*5.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Texture, _c0008);
_pixel = (_TMP1 + 3.00000012E-01).xyz;
_pixel = _pixel*2.22222233E+00;
_pixel = _pixel*(1.00000000E+00 + _pixel/6.40000045E-01);
_pixel = _pixel - 5.00000000E+00;
_TMP9 = max(_pixel, vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00));
_pixel = _TMP9/(1.00000000E+01 + _TMP9);
_Color = _Color + _pixel*2.21600011E-03;
_TMP2 = COMPAT_TEXTURE(Texture, TEX0.xy);
_OUT._color = vec4(_Color.x, _Color.y, _Color.z, 1.00000000E+00) + _TMP2;
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,238 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 _oney;
COMPAT_VARYING vec2 _onex;
COMPAT_VARYING vec2 _texCoord;
struct tex_coords {
vec2 _texCoord;
vec2 _onex;
vec2 _oney;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_VARYING vec4 COL0;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
tex_coords _coords;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0006;
_oColor = COLOR;
_coords._texCoord = gl_MultiTexCoord0.xy;
_coords._onex = vec2(1.00000000E+00/TextureSize.x, 0.00000000E+00);
_coords._oney = vec2(0.00000000E+00, 1.00000000E+00/TextureSize.y);
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
TEX1.xy = _coords._onex;
TEX2.xy = _coords._oney;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 _oney;
COMPAT_VARYING vec2 _onex;
COMPAT_VARYING vec2 _texCoord;
struct tex_coords {
vec2 _texCoord;
vec2 _onex;
vec2 _oney;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _TMP5;
vec4 _TMP10;
float _TMP9;
float _TMP8;
float _TMP7;
float _TMP6;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
input_dummy _IN1;
uniform sampler2D Texture;
vec2 _c0028;
vec2 _c0040;
vec2 _c0052;
vec4 _TMP73;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _coords;
vec2 _pixel_center;
vec2 _texture_coords;
vec4 _color;
float _dx;
float _h_weight_00;
vec2 _coords01;
vec4 _colorNB;
float _h_weight_01;
float _dy;
float _v_weight_00;
vec2 _coords10;
float _v_weight_10;
_coords = TEX0.xy*TextureSize;
_TMP0 = floor(_coords);
_pixel_center = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
_texture_coords = _pixel_center/TextureSize;
_TMP1 = COMPAT_TEXTURE(Texture, _texture_coords);
_TMP6 = pow(_TMP1.x, 2.40000010E+00);
_TMP7 = pow(_TMP1.y, 2.40000010E+00);
_TMP8 = pow(_TMP1.z, 2.40000010E+00);
_TMP9 = pow(_TMP1.w, 2.40000010E+00);
_color = vec4(_TMP6, _TMP7, _TMP8, _TMP9);
_dx = _coords.x - _pixel_center.x;
_h_weight_00 = _dx/8.99999976E-01;
if (_h_weight_00 > 1.00000000E+00) {
_h_weight_00 = 1.00000000E+00;
}
_h_weight_00 = 1.00000000E+00 - _h_weight_00*_h_weight_00;
_h_weight_00 = _h_weight_00*_h_weight_00;
_color = _color*vec4(_h_weight_00, _h_weight_00, _h_weight_00, _h_weight_00);
if (_dx > 0.00000000E+00) {
_coords01 = TEX1.xy;
_dx = 1.00000000E+00 - _dx;
} else {
_coords01 = -TEX1.xy;
_dx = 1.00000000E+00 + _dx;
}
_c0028 = _texture_coords + _coords01;
_TMP2 = COMPAT_TEXTURE(Texture, _c0028);
_TMP6 = pow(_TMP2.x, 2.40000010E+00);
_TMP7 = pow(_TMP2.y, 2.40000010E+00);
_TMP8 = pow(_TMP2.z, 2.40000010E+00);
_TMP9 = pow(_TMP2.w, 2.40000010E+00);
_colorNB = vec4(_TMP6, _TMP7, _TMP8, _TMP9);
_h_weight_01 = _dx/8.99999976E-01;
if (_h_weight_01 > 1.00000000E+00) {
_h_weight_01 = 1.00000000E+00;
}
_h_weight_01 = 1.00000000E+00 - _h_weight_01*_h_weight_01;
_h_weight_01 = _h_weight_01*_h_weight_01;
_color = _color + _colorNB*vec4(_h_weight_01, _h_weight_01, _h_weight_01, _h_weight_01);
_dy = _coords.y - _pixel_center.y;
_v_weight_00 = _dy/6.49999976E-01;
if (_v_weight_00 > 1.00000000E+00) {
_v_weight_00 = 1.00000000E+00;
}
_v_weight_00 = 1.00000000E+00 - _v_weight_00*_v_weight_00;
_v_weight_00 = _v_weight_00*_v_weight_00;
_color = _color*vec4(_v_weight_00, _v_weight_00, _v_weight_00, _v_weight_00);
if (_dy > 0.00000000E+00) {
_coords10 = TEX2.xy;
_dy = 1.00000000E+00 - _dy;
} else {
_coords10 = -TEX2.xy;
_dy = 1.00000000E+00 + _dy;
}
_c0040 = _texture_coords + _coords10;
_TMP3 = COMPAT_TEXTURE(Texture, _c0040);
_TMP6 = pow(_TMP3.x, 2.40000010E+00);
_TMP7 = pow(_TMP3.y, 2.40000010E+00);
_TMP8 = pow(_TMP3.z, 2.40000010E+00);
_TMP9 = pow(_TMP3.w, 2.40000010E+00);
_colorNB = vec4(_TMP6, _TMP7, _TMP8, _TMP9);
_v_weight_10 = _dy/6.49999976E-01;
if (_v_weight_10 > 1.00000000E+00) {
_v_weight_10 = 1.00000000E+00;
}
_v_weight_10 = 1.00000000E+00 - _v_weight_10*_v_weight_10;
_v_weight_10 = _v_weight_10*_v_weight_10;
_color = _color + _colorNB*vec4(_v_weight_10*_h_weight_00, _v_weight_10*_h_weight_00, _v_weight_10*_h_weight_00, _v_weight_10*_h_weight_00);
_c0052 = _texture_coords + _coords01 + _coords10;
_TMP4 = COMPAT_TEXTURE(Texture, _c0052);
_TMP6 = pow(_TMP4.x, 2.40000010E+00);
_TMP7 = pow(_TMP4.y, 2.40000010E+00);
_TMP8 = pow(_TMP4.z, 2.40000010E+00);
_TMP9 = pow(_TMP4.w, 2.40000010E+00);
_colorNB = vec4(_TMP6, _TMP7, _TMP8, _TMP9);
_color = _color + _colorNB*vec4(_v_weight_10*_h_weight_01, _v_weight_10*_h_weight_01, _v_weight_10*_h_weight_01, _v_weight_10*_h_weight_01);
_color = _color*vec4( 1.45000005E+00, 1.45000005E+00, 1.45000005E+00, 1.45000005E+00);
_TMP6 = pow(_color.x, 4.54545438E-01);
_TMP7 = pow(_color.y, 4.54545438E-01);
_TMP8 = pow(_color.z, 4.54545438E-01);
_TMP9 = pow(_color.w, 4.54545438E-01);
_TMP5 = vec4(_TMP6, _TMP7, _TMP8, _TMP9);
_TMP10 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _TMP5);
_TMP73 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP10);
FragColor = _TMP73;
return;
}
#endif

View file

@ -0,0 +1,323 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 VARratio_scale;
COMPAT_VARYING float VARmod_factor;
COMPAT_VARYING vec2 VARc32;
COMPAT_VARYING vec2 VARc22;
COMPAT_VARYING vec2 VARc12;
COMPAT_VARYING vec2 VARc02;
COMPAT_VARYING vec2 VARc31;
COMPAT_VARYING vec2 VARc21;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec2 VARc01;
struct tex_coords {
vec2 VARc01;
vec2 VARc11;
vec2 VARc21;
vec2 VARc31;
vec2 VARc02;
vec2 VARc12;
vec2 VARc22;
vec2 VARc32;
float VARmod_factor;
vec2 VARratio_scale;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
tex_coords _coords1;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _delta;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0006;
_delta = 1.00000000E+00/TextureSize;
VARc01 = gl_MultiTexCoord0.xy + vec2(-_delta.x, 0.00000000E+00);
VARc11 = gl_MultiTexCoord0.xy;
VARc21 = gl_MultiTexCoord0.xy + vec2(_delta.x, 0.00000000E+00);
VARc31 = gl_MultiTexCoord0.xy + vec2(2.00000000E+00*_delta.x, 0.00000000E+00);
VARc02 = gl_MultiTexCoord0.xy + vec2(-_delta.x, _delta.y);
VARc12 = gl_MultiTexCoord0.xy + vec2(0.00000000E+00, _delta.y);
VARc22 = gl_MultiTexCoord0.xy + vec2(_delta.x, _delta.y);
VARc32 = gl_MultiTexCoord0.xy + vec2(2.00000000E+00*_delta.x, _delta.y);
VARmod_factor = (gl_MultiTexCoord0.x*OutputSize.x*TextureSize.x)/InputSize.x;
VARratio_scale = gl_MultiTexCoord0.xy*TextureSize;
gl_Position = _r0006;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 VARratio_scale;
COMPAT_VARYING float VARmod_factor;
COMPAT_VARYING vec2 VARc32;
COMPAT_VARYING vec2 VARc22;
COMPAT_VARYING vec2 VARc12;
COMPAT_VARYING vec2 VARc02;
COMPAT_VARYING vec2 VARc31;
COMPAT_VARYING vec2 VARc21;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec2 VARc01;
struct tex_coords {
vec2 VARc01;
vec2 VARc11;
vec2 VARc21;
vec2 VARc31;
vec2 VARc02;
vec2 VARc12;
vec2 VARc22;
vec2 VARc32;
float VARmod_factor;
vec2 VARratio_scale;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _ret_0;
vec3 _TMP21;
float _TMP28;
float _TMP27;
float _TMP26;
float _TMP20;
float _TMP35;
float _TMP34;
float _TMP33;
float _TMP32;
vec3 _TMP16;
vec3 _TMP15;
float _TMP31;
float _TMP30;
float _TMP29;
vec3 _TMP14;
vec3 _TMP13;
vec3 _TMP36;
float _TMP10;
vec4 _TMP9;
vec4 _TMP8;
float _TMP25;
float _TMP24;
float _TMP23;
float _TMP22;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
tex_coords _co1;
uniform sampler2D Texture;
vec4 _x0062;
vec4 _x0072;
vec3 _r0084;
vec3 _TMP87;
vec3 _r0094;
vec3 _TMP97;
vec3 _x0136;
vec3 _x0144;
vec3 _TMP167;
vec3 _TMP177;
float VARc0188;
float _a0190;
vec3 _a0200;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _uv_ratio;
vec3 _col;
vec3 _col2;
vec4 _coeffs;
vec3 _weights;
vec3 _weights2;
vec3 _wid;
vec3 _wid2;
vec3 _sqrt1;
vec3 _sqrt2;
vec3 _pow_mul1;
vec3 _pow_mul2;
vec3 _div1;
vec3 _div2;
vec3 _pow1;
vec3 _pow2;
vec3 _multi;
vec3 _mcol;
_uv_ratio = fract(VARratio_scale);
_TMP0 = COMPAT_TEXTURE(Texture, VARc01);
_TMP1 = COMPAT_TEXTURE(Texture, VARc11);
_TMP2 = COMPAT_TEXTURE(Texture, VARc21);
_TMP3 = COMPAT_TEXTURE(Texture, VARc31);
_TMP4 = COMPAT_TEXTURE(Texture, VARc02);
_TMP5 = COMPAT_TEXTURE(Texture, VARc12);
_TMP6 = COMPAT_TEXTURE(Texture, VARc22);
_TMP7 = COMPAT_TEXTURE(Texture, VARc32);
_coeffs = vec4(1.00000000E+00 + _uv_ratio.x, _uv_ratio.x, 1.00000000E+00 - _uv_ratio.x, 2.00000000E+00 - _uv_ratio.x) + 4.99999989E-03;
_x0062 = 3.14159274E+00*_coeffs;
_TMP22 = sin(_x0062.x);
_TMP23 = sin(_x0062.y);
_TMP24 = sin(_x0062.z);
_TMP25 = sin(_x0062.w);
_TMP8 = vec4(_TMP22, _TMP23, _TMP24, _TMP25);
_x0072 = 1.57079637E+00*_coeffs;
_TMP22 = sin(_x0072.x);
_TMP23 = sin(_x0072.y);
_TMP24 = sin(_x0072.z);
_TMP25 = sin(_x0072.w);
_TMP9 = vec4(_TMP22, _TMP23, _TMP24, _TMP25);
_coeffs = (_TMP8*_TMP9)/(_coeffs*_coeffs);
_TMP10 = dot(_coeffs, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_coeffs = _coeffs/_TMP10;
_weights = vec3(3.32999992E+00*_uv_ratio.y, 3.32999992E+00*_uv_ratio.y, 3.32999992E+00*_uv_ratio.y);
_weights2 = vec3(_uv_ratio.y*-3.32999992E+00 + 3.32999992E+00, _uv_ratio.y*-3.32999992E+00 + 3.32999992E+00, _uv_ratio.y*-3.32999992E+00 + 3.32999992E+00);
_r0084 = _coeffs.x*_TMP0.xyz;
_r0084 = _r0084 + _coeffs.y*_TMP1.xyz;
_r0084 = _r0084 + _coeffs.z*_TMP2.xyz;
_r0084 = _r0084 + _coeffs.w*_TMP3.xyz;
_TMP36 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _r0084);
_TMP87 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP36);
_r0094 = _coeffs.x*_TMP4.xyz;
_r0094 = _r0094 + _coeffs.y*_TMP5.xyz;
_r0094 = _r0094 + _coeffs.z*_TMP6.xyz;
_r0094 = _r0094 + _coeffs.w*_TMP7.xyz;
_TMP36 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _r0094);
_TMP97 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP36);
_TMP26 = pow(_TMP87.x, 4.00000000E+00);
_TMP27 = pow(_TMP87.y, 4.00000000E+00);
_TMP28 = pow(_TMP87.z, 4.00000000E+00);
_TMP13 = vec3(_TMP26, _TMP27, _TMP28);
_wid = 2.00000000E+00*_TMP13 + 2.00000000E+00;
_TMP26 = pow(_TMP97.x, 4.00000000E+00);
_TMP27 = pow(_TMP97.y, 4.00000000E+00);
_TMP28 = pow(_TMP97.z, 4.00000000E+00);
_TMP14 = vec3(_TMP26, _TMP27, _TMP28);
_wid2 = 2.00000000E+00*_TMP14 + 2.00000000E+00;
_TMP26 = pow(_TMP87.x, 2.70000005E+00);
_TMP27 = pow(_TMP87.y, 2.70000005E+00);
_TMP28 = pow(_TMP87.z, 2.70000005E+00);
_col = vec3(_TMP26, _TMP27, _TMP28);
_TMP26 = pow(_TMP97.x, 2.70000005E+00);
_TMP27 = pow(_TMP97.y, 2.70000005E+00);
_TMP28 = pow(_TMP97.z, 2.70000005E+00);
_col2 = vec3(_TMP26, _TMP27, _TMP28);
_x0136 = 5.00000000E-01*_wid;
_TMP29 = inversesqrt(_x0136.x);
_TMP30 = inversesqrt(_x0136.y);
_TMP31 = inversesqrt(_x0136.z);
_sqrt1 = vec3(_TMP29, _TMP30, _TMP31);
_x0144 = 5.00000000E-01*_wid2;
_TMP29 = inversesqrt(_x0144.x);
_TMP30 = inversesqrt(_x0144.y);
_TMP31 = inversesqrt(_x0144.z);
_sqrt2 = vec3(_TMP29, _TMP30, _TMP31);
_pow_mul1 = _weights*_sqrt1;
_pow_mul2 = _weights2*_sqrt2;
_div1 = 1.31999999E-01*_wid + 3.91999990E-01;
_div2 = 1.31999999E-01*_wid2 + 3.91999990E-01;
_TMP26 = pow(_pow_mul1.x, _wid.x);
_TMP27 = pow(_pow_mul1.y, _wid.y);
_TMP28 = pow(_pow_mul1.z, _wid.z);
_TMP15 = vec3(_TMP26, _TMP27, _TMP28);
_pow1 = -_TMP15;
_TMP26 = pow(_pow_mul2.x, _wid2.x);
_TMP27 = pow(_pow_mul2.y, _wid2.y);
_TMP28 = pow(_pow_mul2.z, _wid2.z);
_TMP16 = vec3(_TMP26, _TMP27, _TMP28);
_pow2 = -_TMP16;
_TMP26 = pow(2.71828198E+00, _pow1.x);
_TMP27 = pow(2.71828198E+00, _pow1.y);
_TMP28 = pow(2.71828198E+00, _pow1.z);
_TMP167 = vec3(_TMP26, _TMP27, _TMP28);
_weights = _TMP167/_div1;
_TMP26 = pow(2.71828198E+00, _pow2.x);
_TMP27 = pow(2.71828198E+00, _pow2.y);
_TMP28 = pow(2.71828198E+00, _pow2.z);
_TMP177 = vec3(_TMP26, _TMP27, _TMP28);
_weights2 = _TMP177/_div2;
_multi = _col*_weights + _col2*_weights2;
_a0190 = VARmod_factor/2.00000000E+00;
_TMP32 = abs(_a0190);
_TMP33 = fract(_TMP32);
_TMP34 = abs(2.00000000E+00);
VARc0188 = _TMP33*_TMP34;
if (VARmod_factor < 0.00000000E+00) {
_TMP35 = -VARc0188;
} else {
_TMP35 = VARc0188;
}
_TMP20 = floor(_TMP35);
_mcol = vec3( 1.00000000E+00, 6.99999988E-01, 1.00000000E+00) + _TMP20*vec3( -3.00000012E-01, 3.00000012E-01, -3.00000012E-01);
_a0200 = _mcol*_multi;
_TMP26 = pow(_a0200.x, 4.54544991E-01);
_TMP27 = pow(_a0200.y, 4.54544991E-01);
_TMP28 = pow(_a0200.z, 4.54544991E-01);
_TMP21 = vec3(_TMP26, _TMP27, _TMP28);
_ret_0 = vec4(_TMP21.x, _TMP21.y, _TMP21.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,318 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _oTex;
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0005;
_oTex = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _ret_0;
float _TMP30;
float _TMP29;
float _TMP28;
float _TMP13;
float _TMP32;
float _TMP11;
float _TMP10;
float _TMP31;
float _TMP9;
float _TMP8;
float _TMP15;
float _TMP14;
float _TMP33;
vec4 _TMP34;
vec4 _TMP27;
vec4 _TMP25;
vec4 _TMP23;
vec4 _TMP21;
vec4 _TMP26;
vec4 _TMP24;
vec4 _TMP22;
vec4 _TMP20;
float _TMP4;
vec4 _TMP3;
vec4 _TMP2;
float _TMP19;
float _TMP18;
float _TMP17;
float _TMP16;
vec4 _TMP1;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
float _TMP43;
float _x_step0044;
float _curve0044;
float _a0048;
float _val0052;
float _a0052;
vec4 _TMP57;
vec4 _x0072;
vec2 _c0086;
vec4 _x0088;
vec4 _x0094;
vec2 _c0098;
vec4 _x0100;
vec2 _c0104;
vec4 _x0106;
vec4 _sample_min0110;
vec4 _sample_max0110;
vec4 _r0112;
vec4 _TMP117;
vec2 _co0124;
vec2 _c0126;
vec4 _x0128;
vec4 _x0134;
vec2 _c0138;
vec4 _x0140;
vec2 _c0144;
vec4 _x0146;
vec4 _sample_min0150;
vec4 _sample_max0150;
vec4 _r0152;
vec4 _TMP157;
float _TMP163;
float _x_step0164;
float _curve0164;
float _a0168;
float _val0172;
float _a0172;
float _TMP183;
float _TMP189;
float _x0190;
float _a0196;
float _x0198;
vec2 _x0200;
float _x0208;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _dx1;
vec2 _dy;
vec2 _pix_co;
vec2 _tex_co;
vec2 _dist;
vec3 _col2;
vec3 _col21;
vec4 _coeffs1;
float _luma;
float _bright;
float _scan_weight;
vec2 _mod_fac;
int _dot_no;
vec3 _mask_weight;
vec3 _TMP37;
_dx1 = vec2(1.00000000E+00/TextureSize.x, 0.00000000E+00);
_dy = vec2(0.00000000E+00, 1.00000000E+00/TextureSize.y);
_pix_co = TEX0.xy*TextureSize - vec2( 5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_pix_co);
_tex_co = (_TMP0 + vec2( 5.00000000E-01, 5.00000000E-01))/TextureSize;
_dist = fract(_pix_co);
_x_step0044 = float((_dist.x >= 5.00000000E-01));
_a0048 = 2.50000000E-01 - (_dist.x - _x_step0044)*(_dist.x - _x_step0044);
_TMP33 = inversesqrt(_a0048);
_TMP14 = 1.00000000E+00/_TMP33;
_a0052 = 5.00000000E-01 - _dist.x;
_val0052 = float((_a0052 > 0.00000000E+00));
_TMP15 = _val0052 - float((_a0052 < 0.00000000E+00));
_curve0044 = 5.00000000E-01 - _TMP14*_TMP15;
_TMP43 = _dist.x + 2.50000000E-01*(_curve0044 - _dist.x);
_coeffs1 = 3.14159274E+00*vec4(1.00000000E+00 + _TMP43, _TMP43, 1.00000000E+00 - _TMP43, 2.00000000E+00 - _TMP43);
_TMP1 = abs(_coeffs1);
_TMP57 = max(_TMP1, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP16 = sin(_TMP57.x);
_TMP17 = sin(_TMP57.y);
_TMP18 = sin(_TMP57.z);
_TMP19 = sin(_TMP57.w);
_TMP2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_x0072 = _TMP57/2.00000000E+00;
_TMP16 = sin(_x0072.x);
_TMP17 = sin(_x0072.y);
_TMP18 = sin(_x0072.z);
_TMP19 = sin(_x0072.w);
_TMP3 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_coeffs1 = ((2.00000000E+00*_TMP2)*_TMP3)/(_TMP57*_TMP57);
_TMP4 = dot(_coeffs1, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_coeffs1 = _coeffs1/_TMP4;
_c0086 = _tex_co - _dx1;
_TMP20 = COMPAT_TEXTURE(Texture, _c0086);
_x0088 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP20 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP21 = _TMP20*_x0088;
_TMP22 = COMPAT_TEXTURE(Texture, _tex_co);
_x0094 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP22 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP23 = _TMP22*_x0094;
_c0098 = _tex_co + _dx1;
_TMP24 = COMPAT_TEXTURE(Texture, _c0098);
_x0100 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP24 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP25 = _TMP24*_x0100;
_c0104 = _tex_co + 2.00000000E+00*_dx1;
_TMP26 = COMPAT_TEXTURE(Texture, _c0104);
_x0106 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP26 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP27 = _TMP26*_x0106;
_r0112 = _coeffs1.x*_TMP21;
_r0112 = _r0112 + _coeffs1.y*_TMP23;
_r0112 = _r0112 + _coeffs1.z*_TMP25;
_r0112 = _r0112 + _coeffs1.w*_TMP27;
_sample_min0110 = min(_TMP23, _TMP25);
_sample_max0110 = max(_TMP23, _TMP25);
_TMP34 = min(_sample_max0110, _r0112);
_TMP117 = max(_sample_min0110, _TMP34);
_co0124 = _tex_co + _dy;
_c0126 = _co0124 - _dx1;
_TMP20 = COMPAT_TEXTURE(Texture, _c0126);
_x0128 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP20 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP21 = _TMP20*_x0128;
_TMP22 = COMPAT_TEXTURE(Texture, _co0124);
_x0134 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP22 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP23 = _TMP22*_x0134;
_c0138 = _co0124 + _dx1;
_TMP24 = COMPAT_TEXTURE(Texture, _c0138);
_x0140 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP24 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP25 = _TMP24*_x0140;
_c0144 = _co0124 + 2.00000000E+00*_dx1;
_TMP26 = COMPAT_TEXTURE(Texture, _c0144);
_x0146 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP26 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP27 = _TMP26*_x0146;
_r0152 = _coeffs1.x*_TMP21;
_r0152 = _r0152 + _coeffs1.y*_TMP23;
_r0152 = _r0152 + _coeffs1.z*_TMP25;
_r0152 = _r0152 + _coeffs1.w*_TMP27;
_sample_min0150 = min(_TMP23, _TMP25);
_sample_max0150 = max(_TMP23, _TMP25);
_TMP34 = min(_sample_max0150, _r0152);
_TMP157 = max(_sample_min0150, _TMP34);
_x_step0164 = float((_dist.y >= 5.00000000E-01));
_a0168 = 2.50000000E-01 - (_dist.y - _x_step0164)*(_dist.y - _x_step0164);
_TMP33 = inversesqrt(_a0168);
_TMP14 = 1.00000000E+00/_TMP33;
_a0172 = 5.00000000E-01 - _dist.y;
_val0172 = float((_a0172 > 0.00000000E+00));
_TMP15 = _val0172 - float((_a0172 < 0.00000000E+00));
_curve0164 = 5.00000000E-01 - _TMP14*_TMP15;
_TMP163 = _dist.y + (_curve0164 - _dist.y);
_col2 = _TMP117.xyz + _TMP163*(_TMP157.xyz - _TMP117.xyz);
_luma = dot(vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02), _col2);
_TMP8 = max(_col2.y, _col2.z);
_TMP9 = max(_col2.x, _TMP8);
_bright = (_TMP9 + _luma)/2.00000000E+00;
_TMP31 = min(6.49999976E-01, _bright);
_TMP183 = max(3.49999994E-01, _TMP31);
_x0190 = _bright*1.50000000E+00;
_TMP31 = min(1.50000000E+00, _x0190);
_TMP189 = max(1.50000000E+00, _TMP31);
_a0196 = TEX0.y*2.00000000E+00*3.14159274E+00*TextureSize.y;
_TMP10 = cos(_a0196);
_x0198 = _TMP10*5.00000000E-01 + 5.00000000E-01;
_TMP11 = pow(_x0198, _TMP189);
_scan_weight = 1.00000000E+00 - _TMP11;
_x0200 = (TEX0.xy*OutputSize*TextureSize)/InputSize;
_mod_fac = floor(_x0200);
_x0208 = _mod_fac.x/3.00000000E+00;
_TMP32 = floor(_x0208);
_TMP13 = _mod_fac.x - 3.00000000E+00*_TMP32;
_dot_no = int(_TMP13);
if (_dot_no == 0) {
_mask_weight = vec3( 1.00000000E+00, 6.99999988E-01, 6.99999988E-01);
} else {
if (_dot_no == 1) {
_mask_weight = vec3( 6.99999988E-01, 1.00000000E+00, 6.99999988E-01);
} else {
_mask_weight = vec3( 6.99999988E-01, 6.99999988E-01, 1.00000000E+00);
}
}
if (InputSize.y >= 4.00000000E+02) {
_scan_weight = 1.00000000E+00;
}
_col21 = _col2.xyz;
_col2 = _col2*vec3(_scan_weight, _scan_weight, _scan_weight);
_col2 = _col2 + _TMP183*(_col21 - _col2);
_col2 = _col2*_mask_weight;
_TMP28 = pow(_col2.x, 5.55555582E-01);
_TMP29 = pow(_col2.y, 5.55555582E-01);
_TMP30 = pow(_col2.z, 5.55555582E-01);
_col2 = vec3(_TMP28, _TMP29, _TMP30);
_TMP37 = _col2*1.20000005E+00;
_ret_0 = vec4(_TMP37.x, _TMP37.y, _TMP37.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,880 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 VARTextureSize;
COMPAT_VARYING vec2 VARcosangle;
COMPAT_VARYING vec2 VARsinangle;
COMPAT_VARYING vec3 VARstretch;
COMPAT_VARYING vec2 VARilfac;
COMPAT_VARYING float VARmod_factor;
COMPAT_VARYING vec2 VARone;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING vec2 _tex_coord;
struct input_dummy {
vec2 _tex_coord;
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord1;
vec2 VARone;
float VARmod_factor;
vec2 VARilfac;
vec3 VARstretch;
vec2 VARsinangle;
vec2 VARcosangle;
vec2 VARTextureSize;
};
out_vertex _ret_0;
float _TMP1;
float _TMP12;
float _TMP11;
vec2 _TMP10;
vec2 _TMP9;
float _TMP25;
float _TMP24;
float _TMP23;
float _TMP22;
float _TMP21;
float _TMP20;
float _TMP29;
vec2 _TMP8;
vec2 _TMP7;
float _TMP19;
float _TMP18;
float _TMP17;
float _TMP30;
float _TMP16;
float _TMP15;
float _TMP14;
float _TMP13;
float _TMP28;
float _TMP27;
float _TMP26;
float _TMP6;
float _TMP5;
float _TMP4;
float _TMP3;
input_dummy _IN1;
vec4 _r0037;
vec2 _c0051;
vec2 _lo0051;
vec2 _hi0051;
vec2 _TMP330051;
float _c0053;
vec2 _xy0053;
vec2 _point0053;
vec2 _tang0053;
vec2 _poc0053;
float _A0053;
float _B0053;
float _C0053;
float _a0053;
vec2 _uv0053;
float _r0053;
float _A0055;
float _B0055;
float _C0055;
float _a0061;
float _a0071;
float _negate0075;
float _x0075;
float _ret0075;
float _a0079;
float _a0083;
float _a0087;
vec2 _uv0089;
float _r0089;
float _x0089;
float _D0089;
float _a0101;
float _a0103;
vec2 _uv0107;
float _r0107;
float _x0107;
float _D0107;
float _a0119;
float _a0121;
vec2 _uv0125;
float _r0125;
float _x0125;
float _D0125;
float _a0137;
float _a0139;
vec2 _uv0143;
float _r0143;
float _x0143;
float _D0143;
float _a0155;
float _a0157;
float _a0161;
float _b0161;
float _x0163;
float _TMP164;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
_r0037 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0037 = _r0037 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0037 = _r0037 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0037 = _r0037 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_TMP3 = sin(0.00000000E+00);
_TMP4 = sin(0.00000000E+00);
_OUT.VARsinangle = vec2(_TMP3, _TMP4);
_TMP5 = cos(0.00000000E+00);
_TMP6 = cos(0.00000000E+00);
_OUT.VARcosangle = vec2(_TMP5, _TMP6);
_xy0053 = (-2.00000000E+00*_OUT.VARsinangle)/(1.00000000E+00 + 1.33333337E+00*_OUT.VARcosangle.x*_OUT.VARcosangle.y);
_TMP26 = dot(_xy0053, _xy0053);
_A0055 = _TMP26 + 2.25000000E+00;
_TMP27 = dot(_xy0053, _OUT.VARsinangle);
_B0055 = 2.00000000E+00*(2.00000000E+00*(_TMP27 - 1.50000000E+00*_OUT.VARcosangle.x*_OUT.VARcosangle.y) - 2.25000000E+00);
_C0055 = 2.25000000E+00 + 6.00000000E+00*_OUT.VARcosangle.x*_OUT.VARcosangle.y;
_a0061 = _B0055*_B0055 - 4.00000000E+00*_A0055*_C0055;
_TMP29 = inversesqrt(_a0061);
_TMP28 = 1.00000000E+00/_TMP29;
_c0053 = (-_B0055 - _TMP28)/(2.00000000E+00*_A0055);
_point0053 = vec2(_c0053, _c0053)*_xy0053;
_point0053 = _point0053 - vec2( -2.00000000E+00, -2.00000000E+00)*_OUT.VARsinangle;
_point0053 = _point0053/vec2( 2.00000000E+00, 2.00000000E+00);
_tang0053 = _OUT.VARsinangle/_OUT.VARcosangle;
_poc0053 = _point0053/_OUT.VARcosangle;
_TMP13 = dot(_tang0053, _tang0053);
_A0053 = _TMP13 + 1.00000000E+00;
_TMP14 = dot(_poc0053, _tang0053);
_B0053 = -2.00000000E+00*_TMP14;
_TMP15 = dot(_poc0053, _poc0053);
_C0053 = _TMP15 - 1.00000000E+00;
_a0071 = _B0053*_B0053 - 4.00000000E+00*_A0053*_C0053;
_TMP29 = inversesqrt(_a0071);
_TMP16 = 1.00000000E+00/_TMP29;
_a0053 = (-_B0053 + _TMP16)/(2.00000000E+00*_A0053);
_uv0053 = (_point0053 - _a0053*_OUT.VARsinangle)/_OUT.VARcosangle;
_negate0075 = float((_a0053 < 0.00000000E+00));
_x0075 = abs(_a0053);
_ret0075 = -1.87292993E-02*_x0075;
_ret0075 = _ret0075 + 7.42610022E-02;
_ret0075 = _ret0075*_x0075;
_ret0075 = _ret0075 - 2.12114394E-01;
_ret0075 = _ret0075*_x0075;
_ret0075 = _ret0075 + 1.57072902E+00;
_a0079 = 1.00000000E+00 - _x0075;
_TMP29 = inversesqrt(_a0079);
_TMP30 = 1.00000000E+00/_TMP29;
_ret0075 = _ret0075*_TMP30;
_ret0075 = _ret0075 - 2.00000000E+00*_negate0075*_ret0075;
_TMP17 = _negate0075*3.14159298E+00 + _ret0075;
_a0083 = 2.00000000E+00*_TMP17;
_TMP18 = abs(_a0083);
_r0053 = max(_TMP18, 9.99999975E-06);
_a0087 = _r0053/2.00000000E+00;
_TMP19 = sin(_a0087);
_c0051 = (_uv0053*_r0053)/_TMP19;
_uv0089 = vec2(-5.00000000E-01, _c0051.y);
_TMP20 = dot(_uv0089, _uv0089);
_TMP29 = inversesqrt(_TMP20);
_TMP21 = 1.00000000E+00/_TMP29;
_TMP22 = abs(_TMP21);
_r0089 = max(_TMP22, 9.99999975E-06);
_a0101 = _r0089/2.00000000E+00;
_TMP23 = sin(_a0101);
_uv0089 = _uv0089*(_TMP23/_r0089);
_a0103 = _r0089/2.00000000E+00;
_TMP24 = cos(_a0103);
_x0089 = 1.00000000E+00 - _TMP24;
_TMP25 = dot(_uv0089, _OUT.VARsinangle);
_D0089 = 7.50000000E-01 + _x0089*_OUT.VARcosangle.x*_OUT.VARcosangle.y + _TMP25;
_TMP7 = (1.50000000E+00*(_uv0089*_OUT.VARcosangle - _x0089*_OUT.VARsinangle))/_D0089;
_uv0107 = vec2(_c0051.x, -3.75000000E-01);
_TMP20 = dot(_uv0107, _uv0107);
_TMP29 = inversesqrt(_TMP20);
_TMP21 = 1.00000000E+00/_TMP29;
_TMP22 = abs(_TMP21);
_r0107 = max(_TMP22, 9.99999975E-06);
_a0119 = _r0107/2.00000000E+00;
_TMP23 = sin(_a0119);
_uv0107 = _uv0107*(_TMP23/_r0107);
_a0121 = _r0107/2.00000000E+00;
_TMP24 = cos(_a0121);
_x0107 = 1.00000000E+00 - _TMP24;
_TMP25 = dot(_uv0107, _OUT.VARsinangle);
_D0107 = 7.50000000E-01 + _x0107*_OUT.VARcosangle.x*_OUT.VARcosangle.y + _TMP25;
_TMP8 = (1.50000000E+00*(_uv0107*_OUT.VARcosangle - _x0107*_OUT.VARsinangle))/_D0107;
_lo0051 = vec2(_TMP7.x, _TMP8.y)/vec2( 1.00000000E+00, 7.50000000E-01);
_uv0125 = vec2(5.00000000E-01, _c0051.y);
_TMP20 = dot(_uv0125, _uv0125);
_TMP29 = inversesqrt(_TMP20);
_TMP21 = 1.00000000E+00/_TMP29;
_TMP22 = abs(_TMP21);
_r0125 = max(_TMP22, 9.99999975E-06);
_a0137 = _r0125/2.00000000E+00;
_TMP23 = sin(_a0137);
_uv0125 = _uv0125*(_TMP23/_r0125);
_a0139 = _r0125/2.00000000E+00;
_TMP24 = cos(_a0139);
_x0125 = 1.00000000E+00 - _TMP24;
_TMP25 = dot(_uv0125, _OUT.VARsinangle);
_D0125 = 7.50000000E-01 + _x0125*_OUT.VARcosangle.x*_OUT.VARcosangle.y + _TMP25;
_TMP9 = (1.50000000E+00*(_uv0125*_OUT.VARcosangle - _x0125*_OUT.VARsinangle))/_D0125;
_uv0143 = vec2(_c0051.x, 3.75000000E-01);
_TMP20 = dot(_uv0143, _uv0143);
_TMP29 = inversesqrt(_TMP20);
_TMP21 = 1.00000000E+00/_TMP29;
_TMP22 = abs(_TMP21);
_r0143 = max(_TMP22, 9.99999975E-06);
_a0155 = _r0143/2.00000000E+00;
_TMP23 = sin(_a0155);
_uv0143 = _uv0143*(_TMP23/_r0143);
_a0157 = _r0143/2.00000000E+00;
_TMP24 = cos(_a0157);
_x0143 = 1.00000000E+00 - _TMP24;
_TMP25 = dot(_uv0143, _OUT.VARsinangle);
_D0143 = 7.50000000E-01 + _x0143*_OUT.VARcosangle.x*_OUT.VARcosangle.y + _TMP25;
_TMP10 = (1.50000000E+00*(_uv0143*_OUT.VARcosangle - _x0143*_OUT.VARsinangle))/_D0143;
_hi0051 = vec2(_TMP9.x, _TMP10.y)/vec2( 1.00000000E+00, 7.50000000E-01);
_a0161 = _hi0051.x - _lo0051.x;
_b0161 = _hi0051.y - _lo0051.y;
_TMP11 = max(_a0161, _b0161);
_TMP330051 = ((_hi0051 + _lo0051)*vec2( 1.00000000E+00, 7.50000000E-01))*5.00000000E-01;
_OUT.VARstretch = vec3(_TMP330051.x, _TMP330051.y, _TMP11);
_OUT.VARTextureSize = vec2(TextureSize.x, TextureSize.y);
_x0163 = InputSize.y/2.00000000E+02;
_TMP1 = floor(_x0163);
_TMP12 = min(2.00000000E+00, _TMP1);
_TMP164 = max(1.00000000E+00, _TMP12);
_OUT.VARilfac = vec2(1.00000000E+00, _TMP164);
_OUT.VARone = _OUT.VARilfac/_OUT.VARTextureSize;
_OUT.VARmod_factor = (gl_MultiTexCoord0.x*TextureSize.x*OutputSize.x)/InputSize.x;
_ret_0._position1 = _r0037;
_ret_0._color1 = COLOR;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
VARone = _OUT.VARone;
VARmod_factor = _OUT.VARmod_factor;
VARilfac = _OUT.VARilfac;
VARstretch = _OUT.VARstretch;
VARsinangle = _OUT.VARsinangle;
VARcosangle = _OUT.VARcosangle;
VARTextureSize = _OUT.VARTextureSize;
gl_Position = _r0037;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 VARTextureSize;
COMPAT_VARYING vec2 VARcosangle;
COMPAT_VARYING vec2 VARsinangle;
COMPAT_VARYING vec3 VARstretch;
COMPAT_VARYING vec2 VARilfac;
COMPAT_VARYING float VARmod_factor;
COMPAT_VARYING vec2 VARone;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec2 _tex_coord;
struct input_dummy {
vec2 _tex_coord;
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
vec2 VARone;
float VARmod_factor;
vec2 VARilfac;
vec3 VARstretch;
vec2 VARsinangle;
vec2 VARcosangle;
vec2 VARTextureSize;
};
vec4 _ret_0;
float _TMP65;
float _TMP64;
float _TMP63;
float _TMP36;
float _TMP49;
float _TMP48;
float _TMP47;
float _TMP46;
vec4 _TMP34;
float _TMP33;
vec4 _TMP61;
float _TMP57;
float _TMP56;
float _TMP55;
float _TMP54;
vec4 _TMP60;
float _TMP73;
float _TMP72;
float _TMP71;
float _TMP70;
vec4 _TMP59;
vec4 _TMP32;
float _TMP31;
vec4 _TMP30;
float _TMP29;
vec4 _TMP28;
vec4 _TMP58;
vec4 _TMP26;
vec4 _TMP24;
vec4 _TMP22;
vec4 _TMP20;
vec4 _TMP25;
vec4 _TMP23;
vec4 _TMP21;
vec4 _TMP19;
vec4 _TMP17;
vec4 _TMP15;
vec4 _TMP13;
vec4 _TMP11;
vec4 _TMP16;
vec4 _TMP14;
vec4 _TMP12;
vec4 _TMP10;
float _TMP9;
vec4 _TMP8;
vec4 _TMP7;
float _TMP53;
float _TMP52;
float _TMP51;
float _TMP50;
vec4 _TMP6;
vec2 _TMP5;
float _TMP4;
float _TMP45;
float _TMP3;
float _TMP44;
vec2 _TMP2;
vec2 _TMP1;
vec2 _TMP0;
float _TMP43;
float _TMP42;
float _TMP41;
float _TMP69;
float _TMP40;
float _TMP39;
float _TMP38;
float _TMP37;
float _TMP68;
float _TMP67;
float _TMP66;
out_vertex _VAR1;
input_dummy _IN1;
uniform sampler2D Texture;
float _c0081;
vec2 _point0081;
vec2 _tang0081;
vec2 _poc0081;
float _A0081;
float _B0081;
float _C0081;
float _a0081;
vec2 _uv0081;
float _r0081;
float _A0083;
float _B0083;
float _C0083;
float _a0089;
float _a0099;
float _negate0103;
float _x0103;
float _ret0103;
float _a0107;
float _a0111;
float _a0115;
vec2 _b0117;
float _TMP126;
float _x0127;
float _c0133;
float _a0135;
vec4 _TMP146;
vec4 _x0161;
vec2 _c0173;
vec2 _c0197;
vec2 _c0209;
vec4 _r0221;
vec4 _TMP222;
vec2 _c0229;
vec2 _c0241;
vec2 _c0253;
vec2 _c0265;
vec4 _r0277;
vec4 _TMP278;
vec4 _wid0285;
vec4 _weights0285;
vec4 _x0297;
vec4 _a0307;
vec4 _TMP316;
vec4 _x0317;
vec4 _wid0329;
vec4 _weights0329;
float _distance0329;
vec4 _x0341;
vec4 _a0351;
vec4 _TMP360;
vec4 _x0361;
vec4 _wid0373;
vec4 _weights0373;
vec4 _x0385;
vec4 _a0395;
vec4 _TMP404;
vec4 _x0405;
float _a0417;
vec4 _wid0419;
vec4 _weights0419;
vec4 _x0431;
vec4 _a0441;
vec4 _TMP450;
vec4 _x0451;
vec4 _wid0465;
vec4 _weights0465;
vec4 _x0477;
vec4 _a0487;
vec4 _TMP496;
vec4 _x0497;
float _a0509;
vec4 _wid0511;
vec4 _weights0511;
vec4 _x0523;
vec4 _a0533;
vec4 _TMP542;
vec4 _x0543;
float _c0555;
float _a0557;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _xy2;
vec2 _cd1;
vec2 _cd2;
float _dist;
vec2 _ilfloat;
vec2 _ratio_scale;
float _filter;
vec2 _uv_ratio;
vec4 _coeffs;
vec4 _weights1;
vec4 _weights2;
vec3 _mul_res;
vec3 _dotMaskWeights;
_cd1 = TEX0.xy*(TextureSize/InputSize);
_cd1 = ((_cd1 - vec2( 5.00000000E-01, 5.00000000E-01))*vec2( 1.00000000E+00, 7.50000000E-01))*VARstretch.z + VARstretch.xy;
_TMP66 = dot(_cd1, _cd1);
_A0083 = _TMP66 + 2.25000000E+00;
_TMP67 = dot(_cd1, VARsinangle);
_B0083 = 2.00000000E+00*(2.00000000E+00*(_TMP67 - 1.50000000E+00*VARcosangle.x*VARcosangle.y) - 2.25000000E+00);
_C0083 = 2.25000000E+00 + 6.00000000E+00*VARcosangle.x*VARcosangle.y;
_a0089 = _B0083*_B0083 - 4.00000000E+00*_A0083*_C0083;
_TMP44 = inversesqrt(_a0089);
_TMP68 = 1.00000000E+00/_TMP44;
_c0081 = (-_B0083 - _TMP68)/(2.00000000E+00*_A0083);
_point0081 = vec2(_c0081, _c0081)*_cd1;
_point0081 = _point0081 - vec2( -2.00000000E+00, -2.00000000E+00)*VARsinangle;
_point0081 = _point0081/vec2( 2.00000000E+00, 2.00000000E+00);
_tang0081 = VARsinangle/VARcosangle;
_poc0081 = _point0081/VARcosangle;
_TMP37 = dot(_tang0081, _tang0081);
_A0081 = _TMP37 + 1.00000000E+00;
_TMP38 = dot(_poc0081, _tang0081);
_B0081 = -2.00000000E+00*_TMP38;
_TMP39 = dot(_poc0081, _poc0081);
_C0081 = _TMP39 - 1.00000000E+00;
_a0099 = _B0081*_B0081 - 4.00000000E+00*_A0081*_C0081;
_TMP44 = inversesqrt(_a0099);
_TMP40 = 1.00000000E+00/_TMP44;
_a0081 = (-_B0081 + _TMP40)/(2.00000000E+00*_A0081);
_uv0081 = (_point0081 - _a0081*VARsinangle)/VARcosangle;
_negate0103 = float((_a0081 < 0.00000000E+00));
_x0103 = abs(_a0081);
_ret0103 = -1.87292993E-02*_x0103;
_ret0103 = _ret0103 + 7.42610022E-02;
_ret0103 = _ret0103*_x0103;
_ret0103 = _ret0103 - 2.12114394E-01;
_ret0103 = _ret0103*_x0103;
_ret0103 = _ret0103 + 1.57072902E+00;
_a0107 = 1.00000000E+00 - _x0103;
_TMP44 = inversesqrt(_a0107);
_TMP69 = 1.00000000E+00/_TMP44;
_ret0103 = _ret0103*_TMP69;
_ret0103 = _ret0103 - 2.00000000E+00*_negate0103*_ret0103;
_TMP41 = _negate0103*3.14159298E+00 + _ret0103;
_a0111 = 2.00000000E+00*_TMP41;
_TMP42 = abs(_a0111);
_r0081 = max(_TMP42, 9.99999975E-06);
_a0115 = _r0081/2.00000000E+00;
_TMP43 = sin(_a0115);
_TMP0 = (_uv0081*_r0081)/_TMP43;
_xy2 = ((_TMP0/vec2( 1.00000000E+00, 7.50000000E-01) + vec2( 5.00000000E-01, 5.00000000E-01))*InputSize)/TextureSize;
_cd2 = _xy2*(TextureSize/InputSize);
_cd2 = (_cd2 - vec2( 5.00000000E-01, 5.00000000E-01)) + vec2( 5.00000000E-01, 5.00000000E-01);
_b0117 = vec2( 1.00000000E+00, 1.00000000E+00) - _cd2;
_TMP1 = min(_cd2, _b0117);
_cd2 = _TMP1*vec2( 1.00000000E+00, 7.50000000E-01);
_TMP2 = min(_cd2, vec2( 2.99999993E-02, 2.99999993E-02));
_cd2 = vec2( 2.99999993E-02, 2.99999993E-02) - _TMP2;
_TMP3 = dot(_cd2, _cd2);
_TMP44 = inversesqrt(_TMP3);
_dist = 1.00000000E+00/_TMP44;
_x0127 = (2.99999993E-02 - _dist)*1.00000000E+03;
_TMP45 = min(1.00000000E+00, _x0127);
_TMP126 = max(0.00000000E+00, _TMP45);
if (VARilfac.y > 1.50000000E+00) {
_a0135 = float(FrameCount)/2.00000000E+00;
_TMP46 = abs(_a0135);
_TMP47 = fract(_TMP46);
_TMP48 = abs(2.00000000E+00);
_c0133 = _TMP47*_TMP48;
if (float(FrameCount) < 0.00000000E+00) {
_TMP49 = -_c0133;
} else {
_TMP49 = _c0133;
}
_TMP4 = _TMP49;
} else {
_TMP4 = 0.00000000E+00;
}
_ilfloat = vec2(0.00000000E+00, _TMP4);
_ratio_scale = ((_xy2*VARTextureSize - vec2( 5.00000000E-01, 5.00000000E-01)) + _ilfloat)/VARilfac;
_filter = InputSize.y/OutputSize.y;
_uv_ratio = fract(_ratio_scale);
_TMP5 = floor(_ratio_scale);
_xy2 = ((_TMP5*VARilfac + vec2( 5.00000000E-01, 5.00000000E-01)) - _ilfloat)/VARTextureSize;
_coeffs = 3.14159274E+00*vec4(1.00000000E+00 + _uv_ratio.x, _uv_ratio.x, 1.00000000E+00 - _uv_ratio.x, 2.00000000E+00 - _uv_ratio.x);
_TMP6 = abs(_coeffs);
_TMP146 = max(_TMP6, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP50 = sin(_TMP146.x);
_TMP51 = sin(_TMP146.y);
_TMP52 = sin(_TMP146.z);
_TMP53 = sin(_TMP146.w);
_TMP7 = vec4(_TMP50, _TMP51, _TMP52, _TMP53);
_x0161 = _TMP146/2.00000000E+00;
_TMP50 = sin(_x0161.x);
_TMP51 = sin(_x0161.y);
_TMP52 = sin(_x0161.z);
_TMP53 = sin(_x0161.w);
_TMP8 = vec4(_TMP50, _TMP51, _TMP52, _TMP53);
_coeffs = ((2.00000000E+00*_TMP7)*_TMP8)/(_TMP146*_TMP146);
_TMP9 = dot(_coeffs, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_coeffs = _coeffs/_TMP9;
_c0173 = _xy2 + vec2(-VARone.x, 0.00000000E+00);
_TMP10 = COMPAT_TEXTURE(Texture, _c0173);
_TMP54 = pow(_TMP10.x, 2.40000010E+00);
_TMP55 = pow(_TMP10.y, 2.40000010E+00);
_TMP56 = pow(_TMP10.z, 2.40000010E+00);
_TMP57 = pow(_TMP10.w, 2.40000010E+00);
_TMP11 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_TMP12 = COMPAT_TEXTURE(Texture, _xy2);
_TMP54 = pow(_TMP12.x, 2.40000010E+00);
_TMP55 = pow(_TMP12.y, 2.40000010E+00);
_TMP56 = pow(_TMP12.z, 2.40000010E+00);
_TMP57 = pow(_TMP12.w, 2.40000010E+00);
_TMP13 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_c0197 = _xy2 + vec2(VARone.x, 0.00000000E+00);
_TMP14 = COMPAT_TEXTURE(Texture, _c0197);
_TMP54 = pow(_TMP14.x, 2.40000010E+00);
_TMP55 = pow(_TMP14.y, 2.40000010E+00);
_TMP56 = pow(_TMP14.z, 2.40000010E+00);
_TMP57 = pow(_TMP14.w, 2.40000010E+00);
_TMP15 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_c0209 = _xy2 + vec2(2.00000000E+00*VARone.x, 0.00000000E+00);
_TMP16 = COMPAT_TEXTURE(Texture, _c0209);
_TMP54 = pow(_TMP16.x, 2.40000010E+00);
_TMP55 = pow(_TMP16.y, 2.40000010E+00);
_TMP56 = pow(_TMP16.z, 2.40000010E+00);
_TMP57 = pow(_TMP16.w, 2.40000010E+00);
_TMP17 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_r0221 = _coeffs.x*_TMP11;
_r0221 = _r0221 + _coeffs.y*_TMP13;
_r0221 = _r0221 + _coeffs.z*_TMP15;
_r0221 = _r0221 + _coeffs.w*_TMP17;
_TMP58 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _r0221);
_TMP222 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP58);
_c0229 = _xy2 + vec2(-VARone.x, VARone.y);
_TMP19 = COMPAT_TEXTURE(Texture, _c0229);
_TMP54 = pow(_TMP19.x, 2.40000010E+00);
_TMP55 = pow(_TMP19.y, 2.40000010E+00);
_TMP56 = pow(_TMP19.z, 2.40000010E+00);
_TMP57 = pow(_TMP19.w, 2.40000010E+00);
_TMP20 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_c0241 = _xy2 + vec2(0.00000000E+00, VARone.y);
_TMP21 = COMPAT_TEXTURE(Texture, _c0241);
_TMP54 = pow(_TMP21.x, 2.40000010E+00);
_TMP55 = pow(_TMP21.y, 2.40000010E+00);
_TMP56 = pow(_TMP21.z, 2.40000010E+00);
_TMP57 = pow(_TMP21.w, 2.40000010E+00);
_TMP22 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_c0253 = _xy2 + VARone;
_TMP23 = COMPAT_TEXTURE(Texture, _c0253);
_TMP54 = pow(_TMP23.x, 2.40000010E+00);
_TMP55 = pow(_TMP23.y, 2.40000010E+00);
_TMP56 = pow(_TMP23.z, 2.40000010E+00);
_TMP57 = pow(_TMP23.w, 2.40000010E+00);
_TMP24 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_c0265 = _xy2 + vec2(2.00000000E+00*VARone.x, VARone.y);
_TMP25 = COMPAT_TEXTURE(Texture, _c0265);
_TMP54 = pow(_TMP25.x, 2.40000010E+00);
_TMP55 = pow(_TMP25.y, 2.40000010E+00);
_TMP56 = pow(_TMP25.z, 2.40000010E+00);
_TMP57 = pow(_TMP25.w, 2.40000010E+00);
_TMP26 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_r0277 = _coeffs.x*_TMP20;
_r0277 = _r0277 + _coeffs.y*_TMP22;
_r0277 = _r0277 + _coeffs.z*_TMP24;
_r0277 = _r0277 + _coeffs.w*_TMP26;
_TMP58 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _r0277);
_TMP278 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP58);
_TMP54 = pow(_TMP222.x, 4.00000000E+00);
_TMP55 = pow(_TMP222.y, 4.00000000E+00);
_TMP56 = pow(_TMP222.z, 4.00000000E+00);
_TMP57 = pow(_TMP222.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0285 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0285 = vec4(_uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01);
_x0297 = 5.00000000E-01*_wid0285;
_TMP70 = inversesqrt(_x0297.x);
_TMP71 = inversesqrt(_x0297.y);
_TMP72 = inversesqrt(_x0297.z);
_TMP73 = inversesqrt(_x0297.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0307 = _weights0285*_TMP60;
_TMP54 = pow(_a0307.x, _wid0285.x);
_TMP55 = pow(_a0307.y, _wid0285.y);
_TMP56 = pow(_a0307.z, _wid0285.z);
_TMP57 = pow(_a0307.w, _wid0285.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0317 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0317.x);
_TMP55 = pow(2.71828198E+00, _x0317.y);
_TMP56 = pow(2.71828198E+00, _x0317.z);
_TMP57 = pow(2.71828198E+00, _x0317.w);
_TMP316 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_weights1 = (1.39999998E+00*_TMP316)/(6.00000024E-01 + 2.00000003E-01*_wid0285);
_distance0329 = 1.00000000E+00 - _uv_ratio.y;
_TMP54 = pow(_TMP278.x, 4.00000000E+00);
_TMP55 = pow(_TMP278.y, 4.00000000E+00);
_TMP56 = pow(_TMP278.z, 4.00000000E+00);
_TMP57 = pow(_TMP278.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0329 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0329 = vec4(_distance0329/3.00000012E-01, _distance0329/3.00000012E-01, _distance0329/3.00000012E-01, _distance0329/3.00000012E-01);
_x0341 = 5.00000000E-01*_wid0329;
_TMP70 = inversesqrt(_x0341.x);
_TMP71 = inversesqrt(_x0341.y);
_TMP72 = inversesqrt(_x0341.z);
_TMP73 = inversesqrt(_x0341.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0351 = _weights0329*_TMP60;
_TMP54 = pow(_a0351.x, _wid0329.x);
_TMP55 = pow(_a0351.y, _wid0329.y);
_TMP56 = pow(_a0351.z, _wid0329.z);
_TMP57 = pow(_a0351.w, _wid0329.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0361 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0361.x);
_TMP55 = pow(2.71828198E+00, _x0361.y);
_TMP56 = pow(2.71828198E+00, _x0361.z);
_TMP57 = pow(2.71828198E+00, _x0361.w);
_TMP360 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_weights2 = (1.39999998E+00*_TMP360)/(6.00000024E-01 + 2.00000003E-01*_wid0329);
_uv_ratio.y = _uv_ratio.y + 3.33333343E-01*_filter;
_TMP54 = pow(_TMP222.x, 4.00000000E+00);
_TMP55 = pow(_TMP222.y, 4.00000000E+00);
_TMP56 = pow(_TMP222.z, 4.00000000E+00);
_TMP57 = pow(_TMP222.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0373 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0373 = vec4(_uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01);
_x0385 = 5.00000000E-01*_wid0373;
_TMP70 = inversesqrt(_x0385.x);
_TMP71 = inversesqrt(_x0385.y);
_TMP72 = inversesqrt(_x0385.z);
_TMP73 = inversesqrt(_x0385.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0395 = _weights0373*_TMP60;
_TMP54 = pow(_a0395.x, _wid0373.x);
_TMP55 = pow(_a0395.y, _wid0373.y);
_TMP56 = pow(_a0395.z, _wid0373.z);
_TMP57 = pow(_a0395.w, _wid0373.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0405 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0405.x);
_TMP55 = pow(2.71828198E+00, _x0405.y);
_TMP56 = pow(2.71828198E+00, _x0405.z);
_TMP57 = pow(2.71828198E+00, _x0405.w);
_TMP404 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_TMP28 = (1.39999998E+00*_TMP404)/(6.00000024E-01 + 2.00000003E-01*_wid0373);
_weights1 = (_weights1 + _TMP28)/3.00000000E+00;
_a0417 = 1.00000000E+00 - _uv_ratio.y;
_TMP29 = abs(_a0417);
_TMP54 = pow(_TMP278.x, 4.00000000E+00);
_TMP55 = pow(_TMP278.y, 4.00000000E+00);
_TMP56 = pow(_TMP278.z, 4.00000000E+00);
_TMP57 = pow(_TMP278.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0419 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0419 = vec4(_TMP29/3.00000012E-01, _TMP29/3.00000012E-01, _TMP29/3.00000012E-01, _TMP29/3.00000012E-01);
_x0431 = 5.00000000E-01*_wid0419;
_TMP70 = inversesqrt(_x0431.x);
_TMP71 = inversesqrt(_x0431.y);
_TMP72 = inversesqrt(_x0431.z);
_TMP73 = inversesqrt(_x0431.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0441 = _weights0419*_TMP60;
_TMP54 = pow(_a0441.x, _wid0419.x);
_TMP55 = pow(_a0441.y, _wid0419.y);
_TMP56 = pow(_a0441.z, _wid0419.z);
_TMP57 = pow(_a0441.w, _wid0419.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0451 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0451.x);
_TMP55 = pow(2.71828198E+00, _x0451.y);
_TMP56 = pow(2.71828198E+00, _x0451.z);
_TMP57 = pow(2.71828198E+00, _x0451.w);
_TMP450 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_TMP30 = (1.39999998E+00*_TMP450)/(6.00000024E-01 + 2.00000003E-01*_wid0419);
_weights2 = (_weights2 + _TMP30)/3.00000000E+00;
_uv_ratio.y = _uv_ratio.y - 6.66666687E-01*_filter;
_TMP31 = abs(_uv_ratio.y);
_TMP54 = pow(_TMP222.x, 4.00000000E+00);
_TMP55 = pow(_TMP222.y, 4.00000000E+00);
_TMP56 = pow(_TMP222.z, 4.00000000E+00);
_TMP57 = pow(_TMP222.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0465 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0465 = vec4(_TMP31/3.00000012E-01, _TMP31/3.00000012E-01, _TMP31/3.00000012E-01, _TMP31/3.00000012E-01);
_x0477 = 5.00000000E-01*_wid0465;
_TMP70 = inversesqrt(_x0477.x);
_TMP71 = inversesqrt(_x0477.y);
_TMP72 = inversesqrt(_x0477.z);
_TMP73 = inversesqrt(_x0477.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0487 = _weights0465*_TMP60;
_TMP54 = pow(_a0487.x, _wid0465.x);
_TMP55 = pow(_a0487.y, _wid0465.y);
_TMP56 = pow(_a0487.z, _wid0465.z);
_TMP57 = pow(_a0487.w, _wid0465.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0497 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0497.x);
_TMP55 = pow(2.71828198E+00, _x0497.y);
_TMP56 = pow(2.71828198E+00, _x0497.z);
_TMP57 = pow(2.71828198E+00, _x0497.w);
_TMP496 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_TMP32 = (1.39999998E+00*_TMP496)/(6.00000024E-01 + 2.00000003E-01*_wid0465);
_weights1 = _weights1 + _TMP32/3.00000000E+00;
_a0509 = 1.00000000E+00 - _uv_ratio.y;
_TMP33 = abs(_a0509);
_TMP54 = pow(_TMP278.x, 4.00000000E+00);
_TMP55 = pow(_TMP278.y, 4.00000000E+00);
_TMP56 = pow(_TMP278.z, 4.00000000E+00);
_TMP57 = pow(_TMP278.w, 4.00000000E+00);
_TMP59 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_wid0511 = 2.00000000E+00 + 2.00000000E+00*_TMP59;
_weights0511 = vec4(_TMP33/3.00000012E-01, _TMP33/3.00000012E-01, _TMP33/3.00000012E-01, _TMP33/3.00000012E-01);
_x0523 = 5.00000000E-01*_wid0511;
_TMP70 = inversesqrt(_x0523.x);
_TMP71 = inversesqrt(_x0523.y);
_TMP72 = inversesqrt(_x0523.z);
_TMP73 = inversesqrt(_x0523.w);
_TMP60 = vec4(_TMP70, _TMP71, _TMP72, _TMP73);
_a0533 = _weights0511*_TMP60;
_TMP54 = pow(_a0533.x, _wid0511.x);
_TMP55 = pow(_a0533.y, _wid0511.y);
_TMP56 = pow(_a0533.z, _wid0511.z);
_TMP57 = pow(_a0533.w, _wid0511.w);
_TMP61 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_x0543 = -_TMP61;
_TMP54 = pow(2.71828198E+00, _x0543.x);
_TMP55 = pow(2.71828198E+00, _x0543.y);
_TMP56 = pow(2.71828198E+00, _x0543.z);
_TMP57 = pow(2.71828198E+00, _x0543.w);
_TMP542 = vec4(_TMP54, _TMP55, _TMP56, _TMP57);
_TMP34 = (1.39999998E+00*_TMP542)/(6.00000024E-01 + 2.00000003E-01*_wid0511);
_weights2 = _weights2 + _TMP34/3.00000000E+00;
_mul_res = (_TMP222*_weights1 + _TMP278*_weights2).xyz;
_mul_res = _mul_res*vec3(_TMP126, _TMP126, _TMP126);
_a0557 = VARmod_factor/2.00000000E+00;
_TMP46 = abs(_a0557);
_TMP47 = fract(_TMP46);
_TMP48 = abs(2.00000000E+00);
_c0555 = _TMP47*_TMP48;
if (VARmod_factor < 0.00000000E+00) {
_TMP49 = -_c0555;
} else {
_TMP49 = _c0555;
}
_TMP36 = floor(_TMP49);
_dotMaskWeights = vec3( 1.00000000E+00, 6.99999988E-01, 1.00000000E+00) + _TMP36*vec3( -3.00000012E-01, 3.00000012E-01, -3.00000012E-01);
_mul_res = _mul_res*_dotMaskWeights;
_TMP63 = pow(_mul_res.x, 4.54545438E-01);
_TMP64 = pow(_mul_res.y, 4.54545438E-01);
_TMP65 = pow(_mul_res.z, 4.54545438E-01);
_mul_res = vec3(_TMP63, _TMP64, _TMP65);
_ret_0 = vec4(_mul_res.x, _mul_res.y, _mul_res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,302 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord1;
};
vec4 _oPosition1;
out_vertex _ret_0;
vec4 _r0009;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0009 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0009 = _r0009 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0009 = _r0009 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0009 = _r0009 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0009;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
gl_Position = _r0009;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord;
};
vec4 _ret_0;
float _TMP18;
float _TMP17;
float _TMP16;
vec3 _TMP15;
float _TMP14;
float _TMP24;
float _TMP23;
float _TMP22;
float _TMP21;
vec3 _TMP20;
vec3 _TMP19;
vec3 _TMP12;
vec3 _TMP11;
vec3 _TMP10;
vec3 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _c0039;
vec2 _c0049;
vec2 _c0059;
vec2 _c0069;
vec2 _c0079;
vec2 _c0099;
vec2 _c0109;
vec4 _r0131;
vec4 _v0131;
vec3 _r0141;
vec3 _r0143;
vec3 _TMP144;
vec3 _TMP152;
vec3 _TMP164;
vec3 _x0165;
vec3 _TMP170;
vec3 _x0171;
vec3 _TMP176;
vec3 _x0177;
vec3 _TMP186;
vec3 _x0187;
vec3 _TMP196;
vec3 _x0197;
float _c0203;
float _a0205;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _TextureSize;
vec3 _color;
vec2 _dx;
vec2 _dy;
vec2 _pix_coord;
vec2 _tc;
vec2 _fp;
vec3 _c00;
vec3 _c01;
vec3 _c02;
vec3 _c03;
vec3 _c10;
vec3 _c11;
vec3 _c12;
vec3 _c13;
vec3 _min_sample;
vec3 _max_sample;
vec3 _color0;
vec3 _color1;
float _pos1;
vec3 _lum0;
vec3 _lum1;
float _mod_factor;
vec3 _dotMaskWeights;
_TextureSize = vec2(TextureSize.x, TextureSize.y)/vec2( 2.00000000E+00, 2.00000000E+00);
_dx = vec2(1.00000000E+00/_TextureSize.x, 0.00000000E+00);
_dy = vec2(0.00000000E+00, 1.00000000E+00/_TextureSize.y);
_pix_coord = TEX0.xy*_TextureSize + vec2( -5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_pix_coord);
_tc = (_TMP0 + vec2( 5.00000000E-01, 5.00000000E-01))/_TextureSize;
_fp = fract(_pix_coord);
_c0039 = (_tc - _dx) - _dy;
_TMP1 = COMPAT_TEXTURE(Texture, _c0039);
_TMP16 = pow(_TMP1.x, 2.40000010E+00);
_TMP17 = pow(_TMP1.y, 2.40000010E+00);
_TMP18 = pow(_TMP1.z, 2.40000010E+00);
_c00 = vec3(_TMP16, _TMP17, _TMP18);
_c0049 = _tc - _dy;
_TMP2 = COMPAT_TEXTURE(Texture, _c0049);
_TMP16 = pow(_TMP2.x, 2.40000010E+00);
_TMP17 = pow(_TMP2.y, 2.40000010E+00);
_TMP18 = pow(_TMP2.z, 2.40000010E+00);
_c01 = vec3(_TMP16, _TMP17, _TMP18);
_c0059 = (_tc + _dx) - _dy;
_TMP3 = COMPAT_TEXTURE(Texture, _c0059);
_TMP16 = pow(_TMP3.x, 2.40000010E+00);
_TMP17 = pow(_TMP3.y, 2.40000010E+00);
_TMP18 = pow(_TMP3.z, 2.40000010E+00);
_c02 = vec3(_TMP16, _TMP17, _TMP18);
_c0069 = (_tc + 2.00000000E+00*_dx) - _dy;
_TMP4 = COMPAT_TEXTURE(Texture, _c0069);
_TMP16 = pow(_TMP4.x, 2.40000010E+00);
_TMP17 = pow(_TMP4.y, 2.40000010E+00);
_TMP18 = pow(_TMP4.z, 2.40000010E+00);
_c03 = vec3(_TMP16, _TMP17, _TMP18);
_c0079 = _tc - _dx;
_TMP5 = COMPAT_TEXTURE(Texture, _c0079);
_TMP16 = pow(_TMP5.x, 2.40000010E+00);
_TMP17 = pow(_TMP5.y, 2.40000010E+00);
_TMP18 = pow(_TMP5.z, 2.40000010E+00);
_c10 = vec3(_TMP16, _TMP17, _TMP18);
_TMP6 = COMPAT_TEXTURE(Texture, _tc);
_TMP16 = pow(_TMP6.x, 2.40000010E+00);
_TMP17 = pow(_TMP6.y, 2.40000010E+00);
_TMP18 = pow(_TMP6.z, 2.40000010E+00);
_c11 = vec3(_TMP16, _TMP17, _TMP18);
_c0099 = _tc + _dx;
_TMP7 = COMPAT_TEXTURE(Texture, _c0099);
_TMP16 = pow(_TMP7.x, 2.40000010E+00);
_TMP17 = pow(_TMP7.y, 2.40000010E+00);
_TMP18 = pow(_TMP7.z, 2.40000010E+00);
_c12 = vec3(_TMP16, _TMP17, _TMP18);
_c0109 = _tc + 2.00000000E+00*_dx;
_TMP8 = COMPAT_TEXTURE(Texture, _c0109);
_TMP16 = pow(_TMP8.x, 2.40000010E+00);
_TMP17 = pow(_TMP8.y, 2.40000010E+00);
_TMP18 = pow(_TMP8.z, 2.40000010E+00);
_c13 = vec3(_TMP16, _TMP17, _TMP18);
_TMP9 = min(_c01, _c11);
_TMP10 = min(_c02, _c12);
_min_sample = min(_TMP9, _TMP10);
_TMP11 = max(_c01, _c11);
_TMP12 = max(_c02, _c12);
_max_sample = max(_TMP11, _TMP12);
_v0131 = vec4(_fp.x*_fp.x*_fp.x, _fp.x*_fp.x, _fp.x, 1.00000000E+00);
_r0131.x = dot(vec4( -5.00000000E-01, 1.00000000E+00, -5.00000000E-01, 0.00000000E+00), _v0131);
_r0131.y = dot(vec4( 1.50000000E+00, -2.50000000E+00, 0.00000000E+00, 1.00000000E+00), _v0131);
_r0131.z = dot(vec4( -1.50000000E+00, 2.00000000E+00, 5.00000000E-01, 0.00000000E+00), _v0131);
_r0131.w = dot(vec4( 5.00000000E-01, -5.00000000E-01, 0.00000000E+00, 0.00000000E+00), _v0131);
_r0141 = _r0131.x*_c00;
_r0141 = _r0141 + _r0131.y*_c01;
_r0141 = _r0141 + _r0131.z*_c02;
_r0141 = _r0141 + _r0131.w*_c03;
_r0143 = _r0131.x*_c10;
_r0143 = _r0143 + _r0131.y*_c11;
_r0143 = _r0143 + _r0131.z*_c12;
_r0143 = _r0143 + _r0131.w*_c13;
_TMP19 = min(_max_sample, _r0141);
_TMP144 = max(_min_sample, _TMP19);
_color0 = _r0141 + 8.00000012E-01*(_TMP144 - _r0141);
_TMP19 = min(_max_sample, _r0143);
_TMP152 = max(_min_sample, _TMP19);
_color1 = _r0143 + 8.00000012E-01*(_TMP152 - _r0143);
_pos1 = 1.00000000E+00 - _fp.y;
_lum0 = vec3( 8.60000014E-01, 8.60000014E-01, 8.60000014E-01) + _color0*vec3( 1.39999986E-01, 1.39999986E-01, 1.39999986E-01);
_lum1 = vec3( 8.60000014E-01, 8.60000014E-01, 8.60000014E-01) + _color1*vec3( 1.39999986E-01, 1.39999986E-01, 1.39999986E-01);
_x0165 = _fp.y/(_lum0 + 1.00000001E-07);
_TMP20 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0165);
_TMP164 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP20);
_x0171 = _pos1/(_lum1 + 1.00000001E-07);
_TMP20 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0171);
_TMP170 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP20);
_x0177 = (-7.20000029E+00*_TMP164)*_TMP164;
_TMP16 = pow(2.71828198E+00, _x0177.x);
_TMP17 = pow(2.71828198E+00, _x0177.y);
_TMP18 = pow(2.71828198E+00, _x0177.z);
_TMP176 = vec3(_TMP16, _TMP17, _TMP18);
_x0187 = (-7.20000029E+00*_TMP170)*_TMP170;
_TMP16 = pow(2.71828198E+00, _x0187.x);
_TMP17 = pow(2.71828198E+00, _x0187.y);
_TMP18 = pow(2.71828198E+00, _x0187.z);
_TMP186 = vec3(_TMP16, _TMP17, _TMP18);
_x0197 = _color0*_TMP176 + _color1*_TMP186;
_TMP20 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0197);
_TMP196 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP20);
_color = _TMP196*vec3( 1.50000000E+00, 1.50000000E+00, 1.50000000E+00);
_mod_factor = (TEX0.x*OutputSize.x*TextureSize.x)/InputSize.x;
_a0205 = _mod_factor/2.00000000E+00;
_TMP21 = abs(_a0205);
_TMP22 = fract(_TMP21);
_TMP23 = abs(2.00000000E+00);
_c0203 = _TMP22*_TMP23;
if (_mod_factor < 0.00000000E+00) {
_TMP24 = -_c0203;
} else {
_TMP24 = _c0203;
}
_TMP14 = floor(_TMP24);
_dotMaskWeights = vec3( 1.00000000E+00, 6.99999988E-01, 1.00000000E+00) + _TMP14*vec3( -3.00000012E-01, 3.00000012E-01, -3.00000012E-01);
_TMP15 = vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_dotMaskWeights - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color.xyz = _color.xyz*_TMP15;
_TMP16 = pow(_color.x, 4.54545438E-01);
_TMP17 = pow(_color.y, 4.54545438E-01);
_TMP18 = pow(_color.z, 4.54545438E-01);
_color = vec3(_TMP16, _TMP17, _TMP18);
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,177 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord1;
};
vec4 _oPosition1;
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _ps;
out_vertex _TMP3;
_ps = 1.00000000E+00/TextureSize;
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0008;
_TMP3._texCoord1 = gl_MultiTexCoord0.xy + _ps*vec2( -4.90000010E-01, 0.00000000E+00);
_ret_0._texCoord1 = _TMP3._texCoord1;
gl_Position = _r0008;
TEX0.xy = _TMP3._texCoord1;
return;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord;
};
vec4 _ret_0;
vec3 _TMP6;
float _TMP9;
float _TMP8;
float _TMP7;
float _TMP5;
float _TMP10;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0019;
vec2 _x0021;
vec2 _c0023;
vec2 _c0027;
vec2 _c0029;
vec4 _r0031;
vec4 _v0031;
vec3 _r0041;
float _a0051;
float _x0053;
float _TMP56;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _dx;
vec2 _tc;
vec2 _fp;
vec3 _color;
float _d;
_dx = vec2(1.00000000E+00/TextureSize.x, 0.00000000E+00);
_x0019 = TEX0.xy*TextureSize;
_TMP0 = floor(_x0019);
_tc = (_TMP0 + vec2( 5.00000000E-01, 5.00000000E-01))/TextureSize;
_x0021 = TEX0.xy*TextureSize;
_fp = fract(_x0021);
_c0023 = _tc - _dx;
_TMP1 = COMPAT_TEXTURE(Texture, _c0023);
_TMP2 = COMPAT_TEXTURE(Texture, _tc);
_c0027 = _tc + _dx;
_TMP3 = COMPAT_TEXTURE(Texture, _c0027);
_c0029 = _tc + 2.00000000E+00*_dx;
_TMP4 = COMPAT_TEXTURE(Texture, _c0029);
_v0031 = vec4(_fp.x*_fp.x*_fp.x, _fp.x*_fp.x, _fp.x, 1.00000000E+00);
_r0031.x = dot(vec4( -5.00000000E-01, 1.00000000E+00, -5.00000000E-01, 0.00000000E+00), _v0031);
_r0031.y = dot(vec4( 1.50000000E+00, -2.50000000E+00, 0.00000000E+00, 1.00000000E+00), _v0031);
_r0031.z = dot(vec4( -1.50000000E+00, 2.00000000E+00, 5.00000000E-01, 0.00000000E+00), _v0031);
_r0031.w = dot(vec4( 5.00000000E-01, -5.00000000E-01, 0.00000000E+00, 0.00000000E+00), _v0031);
_r0041 = _r0031.x*_TMP1.xyz;
_r0041 = _r0041 + _r0031.y*_TMP2.xyz;
_r0041 = _r0041 + _r0031.z*_TMP3.xyz;
_r0041 = _r0041 + _r0031.w*_TMP4.xyz;
_TMP7 = pow(_r0041.x, 2.40000010E+00);
_TMP8 = pow(_r0041.y, 2.40000010E+00);
_TMP9 = pow(_r0041.z, 2.40000010E+00);
_color = vec3(_TMP7, _TMP8, _TMP9);
_a0051 = _fp.y - 5.00000000E-01;
_TMP5 = abs(_a0051);
_x0053 = 1.00000000E+00 - _TMP5;
_TMP10 = min(1.00000000E+00, _x0053);
_TMP56 = max(0.00000000E+00, _TMP10);
_d = _TMP56*_TMP56*(3.00000000E+00 - 2.00000000E+00*_TMP56);
_color = _color*_d;
_TMP7 = pow(_color.x, 4.54545438E-01);
_TMP8 = pow(_color.y, 4.54545438E-01);
_TMP9 = pow(_color.z, 4.54545438E-01);
_TMP6 = vec3(_TMP7, _TMP8, _TMP9);
_ret_0 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,302 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord1;
};
vec4 _oPosition1;
out_vertex _ret_0;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0008;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
gl_Position = _r0008;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord;
};
vec4 _ret_0;
float _TMP21;
float _TMP20;
float _TMP19;
vec3 _TMP18;
float _TMP17;
float _TMP27;
float _TMP26;
float _TMP25;
float _TMP24;
vec3 _TMP23;
vec3 _TMP22;
vec3 _TMP15;
vec3 _TMP14;
vec3 _TMP13;
vec3 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec2 _TMP2;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _a0037;
vec2 _a0039;
vec2 _a0045;
vec2 _c0053;
vec2 _c0063;
vec2 _c0073;
vec2 _c0083;
vec2 _c0093;
vec2 _c0113;
vec2 _c0123;
vec4 _r0145;
vec4 _v0145;
vec3 _r0155;
vec3 _r0157;
vec3 _TMP158;
vec3 _TMP166;
vec3 _TMP178;
vec3 _x0179;
vec3 _TMP184;
vec3 _x0185;
vec3 _TMP190;
vec3 _x0191;
vec3 _TMP200;
vec3 _x0201;
vec3 _TMP210;
vec3 _x0211;
float _a0217;
float _c0219;
float _a0221;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _color;
vec2 _TextureSize;
vec2 _pix_coord;
vec3 _c00;
vec3 _c01;
vec3 _c02;
vec3 _c03;
vec3 _c10;
vec3 _c11;
vec3 _c12;
vec3 _c13;
vec3 _min_sample;
vec3 _max_sample;
vec3 _color0;
vec3 _color1;
float _pos1;
vec3 _lum0;
vec3 _lum1;
vec3 _dotMaskWeights;
_TextureSize = vec2(TextureSize.x, TextureSize.y);
_a0037 = vec2(1.00000000E+00/_TextureSize.x, 0.00000000E+00);
_a0039 = vec2(0.00000000E+00, 1.00000000E+00/_TextureSize.y);
_pix_coord = TEX0.xy*_TextureSize + vec2( -5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_pix_coord);
_a0045 = (_TMP0 + vec2( 5.00000000E-01, 5.00000000E-01))/_TextureSize;
_TMP2 = fract(_pix_coord);
_c0053 = (_a0045 - _a0037) - _a0039;
_TMP4 = COMPAT_TEXTURE(Texture, _c0053);
_TMP19 = pow(_TMP4.x, 2.50000000E+00);
_TMP20 = pow(_TMP4.y, 2.50000000E+00);
_TMP21 = pow(_TMP4.z, 2.50000000E+00);
_c00 = vec3(_TMP19, _TMP20, _TMP21);
_c0063 = _a0045 - _a0039;
_TMP5 = COMPAT_TEXTURE(Texture, _c0063);
_TMP19 = pow(_TMP5.x, 2.50000000E+00);
_TMP20 = pow(_TMP5.y, 2.50000000E+00);
_TMP21 = pow(_TMP5.z, 2.50000000E+00);
_c01 = vec3(_TMP19, _TMP20, _TMP21);
_c0073 = (_a0045 + _a0037) - _a0039;
_TMP6 = COMPAT_TEXTURE(Texture, _c0073);
_TMP19 = pow(_TMP6.x, 2.50000000E+00);
_TMP20 = pow(_TMP6.y, 2.50000000E+00);
_TMP21 = pow(_TMP6.z, 2.50000000E+00);
_c02 = vec3(_TMP19, _TMP20, _TMP21);
_c0083 = (_a0045 + 2.00000000E+00*_a0037) - _a0039;
_TMP7 = COMPAT_TEXTURE(Texture, _c0083);
_TMP19 = pow(_TMP7.x, 2.50000000E+00);
_TMP20 = pow(_TMP7.y, 2.50000000E+00);
_TMP21 = pow(_TMP7.z, 2.50000000E+00);
_c03 = vec3(_TMP19, _TMP20, _TMP21);
_c0093 = _a0045 - _a0037;
_TMP8 = COMPAT_TEXTURE(Texture, _c0093);
_TMP19 = pow(_TMP8.x, 2.50000000E+00);
_TMP20 = pow(_TMP8.y, 2.50000000E+00);
_TMP21 = pow(_TMP8.z, 2.50000000E+00);
_c10 = vec3(_TMP19, _TMP20, _TMP21);
_TMP9 = COMPAT_TEXTURE(Texture, _a0045);
_TMP19 = pow(_TMP9.x, 2.50000000E+00);
_TMP20 = pow(_TMP9.y, 2.50000000E+00);
_TMP21 = pow(_TMP9.z, 2.50000000E+00);
_c11 = vec3(_TMP19, _TMP20, _TMP21);
_c0113 = _a0045 + _a0037;
_TMP10 = COMPAT_TEXTURE(Texture, _c0113);
_TMP19 = pow(_TMP10.x, 2.50000000E+00);
_TMP20 = pow(_TMP10.y, 2.50000000E+00);
_TMP21 = pow(_TMP10.z, 2.50000000E+00);
_c12 = vec3(_TMP19, _TMP20, _TMP21);
_c0123 = _a0045 + 2.00000000E+00*_a0037;
_TMP11 = COMPAT_TEXTURE(Texture, _c0123);
_TMP19 = pow(_TMP11.x, 2.50000000E+00);
_TMP20 = pow(_TMP11.y, 2.50000000E+00);
_TMP21 = pow(_TMP11.z, 2.50000000E+00);
_c13 = vec3(_TMP19, _TMP20, _TMP21);
_TMP12 = min(_c01, _c11);
_TMP13 = min(_c02, _c12);
_min_sample = min(_TMP12, _TMP13);
_TMP14 = max(_c01, _c11);
_TMP15 = max(_c02, _c12);
_max_sample = max(_TMP14, _TMP15);
_v0145 = vec4(_TMP2.x*_TMP2.x*_TMP2.x, _TMP2.x*_TMP2.x, _TMP2.x, 1.00000000E+00);
_r0145.x = dot(vec4( -5.00000000E-01, 1.00000000E+00, -5.00000000E-01, 0.00000000E+00), _v0145);
_r0145.y = dot(vec4( 1.50000000E+00, -2.50000000E+00, 0.00000000E+00, 1.00000000E+00), _v0145);
_r0145.z = dot(vec4( -1.50000000E+00, 2.00000000E+00, 5.00000000E-01, 0.00000000E+00), _v0145);
_r0145.w = dot(vec4( 5.00000000E-01, -5.00000000E-01, 0.00000000E+00, 0.00000000E+00), _v0145);
_r0155 = _r0145.x*_c00;
_r0155 = _r0155 + _r0145.y*_c01;
_r0155 = _r0155 + _r0145.z*_c02;
_r0155 = _r0155 + _r0145.w*_c03;
_r0157 = _r0145.x*_c10;
_r0157 = _r0157 + _r0145.y*_c11;
_r0157 = _r0157 + _r0145.z*_c12;
_r0157 = _r0157 + _r0145.w*_c13;
_TMP22 = min(_max_sample, _r0155);
_TMP158 = max(_min_sample, _TMP22);
_color0 = _r0155 + 8.00000012E-01*(_TMP158 - _r0155);
_TMP22 = min(_max_sample, _r0157);
_TMP166 = max(_min_sample, _TMP22);
_color1 = _r0157 + 8.00000012E-01*(_TMP166 - _r0157);
_pos1 = 1.00000000E+00 - _TMP2.y;
_lum0 = vec3( 8.60000014E-01, 8.60000014E-01, 8.60000014E-01) + _color0*vec3( 1.39999986E-01, 1.39999986E-01, 1.39999986E-01);
_lum1 = vec3( 8.60000014E-01, 8.60000014E-01, 8.60000014E-01) + _color1*vec3( 1.39999986E-01, 1.39999986E-01, 1.39999986E-01);
_x0179 = _TMP2.y/(_lum0 + 1.00000001E-07);
_TMP23 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0179);
_TMP178 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP23);
_x0185 = _pos1/(_lum1 + 1.00000001E-07);
_TMP23 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0185);
_TMP184 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP23);
_x0191 = (-5.00000000E+00*_TMP178)*_TMP178;
_TMP19 = pow(2.71828198E+00, _x0191.x);
_TMP20 = pow(2.71828198E+00, _x0191.y);
_TMP21 = pow(2.71828198E+00, _x0191.z);
_TMP190 = vec3(_TMP19, _TMP20, _TMP21);
_x0201 = (-5.00000000E+00*_TMP184)*_TMP184;
_TMP19 = pow(2.71828198E+00, _x0201.x);
_TMP20 = pow(2.71828198E+00, _x0201.y);
_TMP21 = pow(2.71828198E+00, _x0201.z);
_TMP200 = vec3(_TMP19, _TMP20, _TMP21);
_x0211 = _color0*_TMP190 + _color1*_TMP200;
_TMP23 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0211);
_TMP210 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP23);
_color = _TMP210*vec3( 1.50000000E+00, 1.50000000E+00, 1.50000000E+00);
_a0217 = (TEX0.x*OutputSize.x*TextureSize.x)/InputSize.x;
_a0221 = _a0217/2.00000000E+00;
_TMP24 = abs(_a0221);
_TMP25 = fract(_TMP24);
_TMP26 = abs(2.00000000E+00);
_c0219 = _TMP25*_TMP26;
if (_a0217 < 0.00000000E+00) {
_TMP27 = -_c0219;
} else {
_TMP27 = _c0219;
}
_TMP17 = floor(_TMP27);
_dotMaskWeights = vec3( 1.00000000E+00, 6.99999988E-01, 1.00000000E+00) + _TMP17*vec3( -3.00000012E-01, 3.00000012E-01, -3.00000012E-01);
_TMP18 = vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_dotMaskWeights - vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color.xyz = _color.xyz*_TMP18;
_TMP19 = pow(_color.x, 4.54545438E-01);
_TMP20 = pow(_color.y, 4.54545438E-01);
_TMP21 = pow(_color.z, 4.54545438E-01);
_color = vec3(_TMP19, _TMP20, _TMP21);
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,316 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord2;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0009;
vec4 _v0009;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_v0009 = vec4(float(gl_Vertex.x), float(gl_Vertex.y), float(gl_Vertex.z), float(gl_Vertex.w));
_r0009 = _v0009.x*gl_ModelViewProjectionMatrix[0];
_r0009 = _r0009 + _v0009.y*gl_ModelViewProjectionMatrix[1];
_r0009 = _r0009 + _v0009.z*gl_ModelViewProjectionMatrix[2];
_r0009 = _r0009 + _v0009.w*gl_ModelViewProjectionMatrix[3];
_OUT._position1 = vec4(float(_r0009.x), float(_r0009.y), float(_r0009.z), float(_r0009.w));
_ps = vec2(float((1.00000000E+00/TextureSize.x)), float((1.00000000E+00/TextureSize.y)));
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1 = _texCoord.xxxy + vec4(float(-_ps.x), 0.00000000E+00, float(_ps.x), float((-2.00000000E+00*_ps.y)));
_OUT._t2 = _texCoord.xxxy + vec4(float(-_ps.x), 0.00000000E+00, float(_ps.x), float(-_ps.y));
_OUT._t3 = _texCoord.xxxy + vec4(float(-_ps.x), 0.00000000E+00, float(_ps.x), 0.00000000E+00);
_OUT._t4 = _texCoord.xxxy + vec4(float(-_ps.x), 0.00000000E+00, float(_ps.x), float(_ps.y));
_OUT._t5 = _texCoord.xxxy + vec4(float(-_ps.x), 0.00000000E+00, float(_ps.x), float((2.00000000E+00*_ps.y)));
_OUT._t6 = _texCoord.xyyy + vec4(float((-2.00000000E+00*_ps.x)), float(-_ps.y), 0.00000000E+00, float(_ps.y));
_OUT._t7 = _texCoord.xyyy + vec4(float((2.00000000E+00*_ps.x)), float(-_ps.y), 0.00000000E+00, float(_ps.y));
_ret_0._position1 = _OUT._position1;
_ret_0._color1 = COLOR;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
_ret_0._t4 = _OUT._t4;
_ret_0._t5 = _OUT._t5;
_ret_0._t6 = _OUT._t6;
_ret_0._t7 = _OUT._t7;
gl_Position = _OUT._position1;
COL0 = COLOR;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
TEX4 = _OUT._t4;
TEX5 = _OUT._t5;
TEX6 = _OUT._t6;
TEX7 = _OUT._t7;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
TEX5 = _ret_0._t5;
TEX6 = _ret_0._t6;
TEX7 = _ret_0._t7;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
vec4 _ret_0;
vec3 _TMP11;
vec3 _TMP17;
float _TMP16;
float _TMP15;
float _TMP14;
vec3 _TMP13;
vec3 _TMP10;
vec3 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0023;
vec3 _b0045;
vec3 _b0049;
vec3 _TMP50;
vec3 _a0051;
vec3 _TMP80;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _fp;
vec3 _B;
vec3 _D;
vec3 _E;
vec3 _F;
vec3 _H;
vec3 _D0;
vec3 _F4;
vec3 _n1;
vec3 _n2;
vec3 _n3;
vec3 _n4;
vec3 _s;
vec3 _aa;
vec3 _bb;
vec3 _cc;
vec3 _dd;
vec3 _t;
vec3 _m;
vec3 _res;
vec3 _color;
float _ddy;
float _v_weight_00;
vec3 _coords10;
vec3 _colorNB;
float _v_weight_10;
_x0023 = TEX0.xy*TextureSize;
_fp = fract(_x0023);
_TMP1 = COMPAT_TEXTURE(Texture, TEX2.yw);
_B = vec3(float(_TMP1.x), float(_TMP1.y), float(_TMP1.z));
_TMP2 = COMPAT_TEXTURE(Texture, TEX3.xw);
_D = vec3(float(_TMP2.x), float(_TMP2.y), float(_TMP2.z));
_TMP3 = COMPAT_TEXTURE(Texture, TEX3.yw);
_E = vec3(float(_TMP3.x), float(_TMP3.y), float(_TMP3.z));
_TMP4 = COMPAT_TEXTURE(Texture, TEX3.zw);
_F = vec3(float(_TMP4.x), float(_TMP4.y), float(_TMP4.z));
_TMP5 = COMPAT_TEXTURE(Texture, TEX4.yw);
_H = vec3(float(_TMP5.x), float(_TMP5.y), float(_TMP5.z));
_TMP7 = COMPAT_TEXTURE(Texture, TEX6.xz);
_D0 = vec3(float(_TMP7.x), float(_TMP7.y), float(_TMP7.z));
_TMP8 = COMPAT_TEXTURE(Texture, TEX7.xz);
_F4 = vec3(float(_TMP8.x), float(_TMP8.y), float(_TMP8.z));
_n1 = vec3(float(_D0.x), float(_D0.y), float(_D0.z));
_n2 = vec3(float(_D.x), float(_D.y), float(_D.z));
_s = vec3(float(_E.x), float(_E.y), float(_E.z));
_n3 = vec3(float(_F.x), float(_F.y), float(_F.z));
_n4 = vec3(float(_F4.x), float(_F4.y), float(_F4.z));
_aa = _n2 - _n1;
_bb = _s - _n2;
_cc = _n3 - _s;
_dd = _n4 - _n3;
_t = (7.00000000E+00*(_bb + _cc) - 3.00000000E+00*(_aa + _dd))/1.60000000E+01;
_m = vec3(_s.x < 5.00000000E-01 ? (2.00000000E+00*_s).x : (2.00000000E+00*(1.00000000E+00 - _s)).x, _s.y < 5.00000000E-01 ? (2.00000000E+00*_s).y : (2.00000000E+00*(1.00000000E+00 - _s)).y, _s.z < 5.00000000E-01 ? (2.00000000E+00*_s).z : (2.00000000E+00*(1.00000000E+00 - _s)).z);
_TMP9 = abs(_bb);
_b0045 = 2.00000000E+00*_TMP9 + 9.99999978E-03;
_m = min(_m, _b0045);
_TMP10 = abs(_cc);
_b0049 = 2.00000000E+00*_TMP10 + 9.99999978E-03;
_m = min(_m, _b0049);
_a0051 = -_m;
_TMP13 = min(_m, _t);
_TMP50 = max(_a0051, _TMP13);
_res = (2.00000000E+00*_fp.x - 1.00000000E+00)*_TMP50 + _s;
_TMP14 = pow(_res.x, 2.40000010E+00);
_TMP15 = pow(_res.y, 2.40000010E+00);
_TMP16 = pow(_res.z, 2.40000010E+00);
_color = vec3(_TMP14, _TMP15, _TMP16);
_ddy = _fp.y - 5.00000000E-01;
_v_weight_00 = _ddy/6.00000024E-01;
if (_v_weight_00 > 1.00000000E+00) {
_v_weight_00 = 1.00000000E+00;
}
_v_weight_00 = 1.00000000E+00 - _v_weight_00*_v_weight_00;
_v_weight_00 = _v_weight_00*_v_weight_00;
_color = _color*vec3(_v_weight_00, _v_weight_00, _v_weight_00);
if (_ddy > 0.00000000E+00) {
_coords10 = vec3(float(_H.x), float(_H.y), float(_H.z));
_ddy = 1.00000000E+00 - _ddy;
} else {
_coords10 = vec3(float(_B.x), float(_B.y), float(_B.z));
_ddy = 1.00000000E+00 + _ddy;
}
_TMP14 = pow(_coords10.x, 2.40000010E+00);
_TMP15 = pow(_coords10.y, 2.40000010E+00);
_TMP16 = pow(_coords10.z, 2.40000010E+00);
_colorNB = vec3(_TMP14, _TMP15, _TMP16);
_v_weight_10 = _ddy/6.00000024E-01;
if (_v_weight_10 > 1.00000000E+00) {
_v_weight_10 = 1.00000000E+00;
}
_v_weight_10 = 1.00000000E+00 - _v_weight_10*_v_weight_10;
_v_weight_10 = _v_weight_10*_v_weight_10;
_color = _color + _colorNB*vec3(_v_weight_10, _v_weight_10, _v_weight_10);
_color = _color*vec3( 1.39999998E+00, 1.39999998E+00, 1.39999998E+00);
_TMP14 = pow(_color.x, 4.54545438E-01);
_TMP15 = pow(_color.y, 4.54545438E-01);
_TMP16 = pow(_color.z, 4.54545438E-01);
_TMP11 = vec3(_TMP14, _TMP15, _TMP16);
_TMP17 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _TMP11);
_TMP80 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP17);
_ret_0 = vec4(_TMP80.x, _TMP80.y, _TMP80.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,440 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 VARloc;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord2;
vec4 _t1;
vec2 VARloc;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1.xy = vec2(_ps.x, 0.00000000E+00);
_OUT._t1.zw = vec2(0.00000000E+00, _ps.y);
_OUT.VARloc = _texCoord*TextureSize;
_ret_0._position1 = _r0006;
_ret_0._color1 = COLOR;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
VARloc = _OUT.VARloc;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 VARloc;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color2;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color2;
vec2 _texCoord;
vec4 _t1;
vec2 VARloc;
};
vec4 _ret_0;
float _TMP52;
float _TMP51;
float _TMP50;
float _TMP49;
float _TMP48;
float _TMP47;
float _TMP46;
float _TMP45;
float _TMP44;
float _TMP43;
float _TMP42;
float _TMP41;
float _TMP40;
float _TMP39;
float _TMP38;
float _TMP37;
float _TMP36;
float _TMP35;
float _TMP34;
float _TMP33;
float _TMP32;
float _TMP31;
float _TMP30;
float _TMP29;
float _TMP28;
float _TMP27;
float _TMP26;
float _TMP25;
float _TMP24;
float _TMP23;
float _TMP22;
float _TMP21;
float _TMP20;
float _TMP19;
float _TMP18;
float _TMP17;
float _TMP53;
float _TMP54;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
out_vertex _VAR1;
uniform sampler2D Texture;
vec2 _val0062;
vec2 _c0066;
vec2 _c0068;
vec2 _c0070;
vec2 _c0072;
vec2 _c0074;
vec2 _c0076;
vec2 _c0078;
vec2 _c0080;
vec2 _c0082;
vec2 _c0084;
vec2 _c0086;
vec2 _c0088;
vec2 _c0090;
vec2 _c0092;
vec2 _c0094;
float _TMP95;
float _TMP99;
float _TMP103;
float _TMP107;
float _TMP111;
float _TMP115;
float _TMP119;
float _TMP123;
float _TMP127;
float _TMP131;
float _TMP135;
float _TMP139;
float _TMP143;
float _TMP147;
float _TMP151;
float _TMP155;
float _TMP163;
vec2 _v0164;
float _TMP171;
vec2 _v0172;
float _a0180;
float _a0182;
float _a0184;
float _a0186;
float _a0188;
float _a0190;
float _a0192;
float _a0194;
float _a0196;
float _a0198;
float _a0200;
float _a0202;
float _a0204;
float _a0206;
float _a0208;
float _a0210;
float _a0212;
float _a0214;
float _a0216;
float _a0218;
float _a0220;
float _a0222;
float _a0224;
float _a0226;
float _a0228;
float _a0230;
float _a0232;
float _a0234;
float _a0236;
float _a0238;
float _a0240;
float _a0242;
float _a0244;
float _a0246;
float _a0248;
float _a0250;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _pos;
vec2 _dir;
vec2 _g1;
vec2 _g2;
vec3 _B1;
vec3 _C1;
vec3 _D1;
float _p1;
float _q1;
float _count1;
float _count2;
vec3 _color1;
_TMP0 = fract(VARloc);
_pos = _TMP0 - vec2( 5.00000000E-01, 5.00000000E-01);
_val0062 = vec2(float((_pos.x > 0.00000000E+00)), float((_pos.y > 0.00000000E+00)));
_dir = _val0062 - vec2(float((_pos.x < 0.00000000E+00)), float((_pos.y < 0.00000000E+00)));
_g1 = _dir*TEX1.xy;
_g2 = _dir*TEX1.zw;
_TMP1 = COMPAT_TEXTURE(Texture, TEX0.xy);
_c0066 = TEX0.xy + _g1;
_TMP2 = COMPAT_TEXTURE(Texture, _c0066);
_B1 = _TMP2.xyz;
_c0068 = TEX0.xy + _g2;
_TMP3 = COMPAT_TEXTURE(Texture, _c0068);
_C1 = _TMP3.xyz;
_c0070 = TEX0.xy + _g1 + _g2;
_TMP4 = COMPAT_TEXTURE(Texture, _c0070);
_D1 = _TMP4.xyz;
_c0072 = (TEX0.xy - _g1) - _g2;
_TMP5 = COMPAT_TEXTURE(Texture, _c0072);
_c0074 = TEX0.xy - _g2;
_TMP6 = COMPAT_TEXTURE(Texture, _c0074);
_c0076 = (TEX0.xy + _g1) - _g2;
_TMP7 = COMPAT_TEXTURE(Texture, _c0076);
_c0078 = (TEX0.xy + 2.00000000E+00*_g1) - _g2;
_TMP8 = COMPAT_TEXTURE(Texture, _c0078);
_c0080 = TEX0.xy - _g1;
_TMP9 = COMPAT_TEXTURE(Texture, _c0080);
_c0082 = (TEX0.xy - _g1) + _g2;
_TMP10 = COMPAT_TEXTURE(Texture, _c0082);
_c0084 = TEX0.xy + 2.00000000E+00*_g1;
_TMP11 = COMPAT_TEXTURE(Texture, _c0084);
_c0086 = TEX0.xy + 2.00000000E+00*_g1 + _g2;
_TMP12 = COMPAT_TEXTURE(Texture, _c0086);
_c0088 = (TEX0.xy - _g1) + 2.00000000E+00*_g2;
_TMP13 = COMPAT_TEXTURE(Texture, _c0088);
_c0090 = TEX0.xy + 2.00000000E+00*_g2;
_TMP14 = COMPAT_TEXTURE(Texture, _c0090);
_c0092 = TEX0.xy + _g1 + 2.00000000E+00*_g2;
_TMP15 = COMPAT_TEXTURE(Texture, _c0092);
_c0094 = TEX0.xy + 2.00000000E+00*_g1 + 2.00000000E+00*_g2;
_TMP16 = COMPAT_TEXTURE(Texture, _c0094);
_TMP95 = dot(_TMP1.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP99 = dot(_TMP2.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP103 = dot(_TMP3.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP107 = dot(_TMP4.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP111 = dot(_TMP5.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP115 = dot(_TMP6.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP119 = dot(_TMP7.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP123 = dot(_TMP8.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP127 = dot(_TMP9.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP131 = dot(_TMP10.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP135 = dot(_TMP11.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP139 = dot(_TMP12.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP143 = dot(_TMP13.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP147 = dot(_TMP14.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP151 = dot(_TMP15.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP155 = dot(_TMP16.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_p1 = abs(_pos.x);
_q1 = abs(_pos.y);
_v0164 = _g1 - _pos;
_TMP53 = dot(_v0164, _v0164);
_TMP54 = inversesqrt(_TMP53);
_TMP163 = 1.00000000E+00/_TMP54;
_v0172 = _g2 - _pos;
_TMP53 = dot(_v0172, _v0172);
_TMP54 = inversesqrt(_TMP53);
_TMP171 = 1.00000000E+00/_TMP54;
_a0180 = _TMP111 - _TMP95;
_TMP17 = abs(_a0180);
_a0182 = _TMP115 - _TMP127;
_TMP18 = abs(_a0182);
_count1 = float((_TMP17 < _TMP18));
_a0184 = _TMP111 - _TMP95;
_TMP19 = abs(_a0184);
_a0186 = _TMP115 - _TMP127;
_TMP20 = abs(_a0186);
_count2 = float((_TMP19 > _TMP20));
_a0188 = _TMP115 - _TMP99;
_TMP21 = abs(_a0188);
_a0190 = _TMP119 - _TMP95;
_TMP22 = abs(_a0190);
_count1 = _count1 + float((_TMP21 < _TMP22));
_a0192 = _TMP115 - _TMP99;
_TMP23 = abs(_a0192);
_a0194 = _TMP119 - _TMP95;
_TMP24 = abs(_a0194);
_count2 = _count2 + float((_TMP23 > _TMP24));
_a0196 = _TMP119 - _TMP135;
_TMP25 = abs(_a0196);
_a0198 = _TMP123 - _TMP99;
_TMP26 = abs(_a0198);
_count1 = _count1 + float((_TMP25 < _TMP26));
_a0200 = _TMP119 - _TMP135;
_TMP27 = abs(_a0200);
_a0202 = _TMP123 - _TMP99;
_TMP28 = abs(_a0202);
_count2 = _count2 + float((_TMP27 > _TMP28));
_a0204 = _TMP127 - _TMP103;
_TMP29 = abs(_a0204);
_a0206 = _TMP131 - _TMP95;
_TMP30 = abs(_a0206);
_count1 = _count1 + float((_TMP29 < _TMP30));
_a0208 = _TMP127 - _TMP103;
_TMP31 = abs(_a0208);
_a0210 = _TMP131 - _TMP95;
_TMP32 = abs(_a0210);
_count2 = _count2 + float((_TMP31 > _TMP32));
_a0212 = _TMP99 - _TMP139;
_TMP33 = abs(_a0212);
_a0214 = _TMP135 - _TMP107;
_TMP34 = abs(_a0214);
_count1 = _count1 + float((_TMP33 < _TMP34));
_a0216 = _TMP99 - _TMP139;
_TMP35 = abs(_a0216);
_a0218 = _TMP135 - _TMP107;
_TMP36 = abs(_a0218);
_count2 = _count2 + float((_TMP35 > _TMP36));
_a0220 = _TMP131 - _TMP147;
_TMP37 = abs(_a0220);
_a0222 = _TMP103 - _TMP143;
_TMP38 = abs(_a0222);
_count1 = _count1 + float((_TMP37 < _TMP38));
_a0224 = _TMP131 - _TMP147;
_TMP39 = abs(_a0224);
_a0226 = _TMP103 - _TMP143;
_TMP40 = abs(_a0226);
_count2 = _count2 + float((_TMP39 > _TMP40));
_a0228 = _TMP151 - _TMP103;
_TMP41 = abs(_a0228);
_a0230 = _TMP147 - _TMP107;
_TMP42 = abs(_a0230);
_count1 = _count1 + float((_TMP41 < _TMP42));
_a0232 = _TMP151 - _TMP103;
_TMP43 = abs(_a0232);
_a0234 = _TMP147 - _TMP107;
_TMP44 = abs(_a0234);
_count2 = _count2 + float((_TMP43 > _TMP44));
_a0236 = _TMP155 - _TMP107;
_TMP45 = abs(_a0236);
_a0238 = _TMP151 - _TMP139;
_TMP46 = abs(_a0238);
_count1 = _count1 + float((_TMP45 < _TMP46));
_a0240 = _TMP155 - _TMP107;
_TMP47 = abs(_a0240);
_a0242 = _TMP151 - _TMP139;
_TMP48 = abs(_a0242);
_count2 = _count2 + float((_TMP47 > _TMP48));
_a0244 = _TMP95 - _TMP107;
_TMP49 = abs(_a0244);
_a0246 = _TMP99 - _TMP103;
_TMP50 = abs(_a0246);
if (_count1 >= 5.00000000E+00 || _TMP49 < _TMP50 && _count2 <= 4.00000000E+00) {
if (_TMP163 < _TMP171) {
_C1 = (_TMP1.xyz + _TMP4.xyz) - _TMP2.xyz;
} else {
if (_TMP163 >= _TMP171) {
_B1 = (_TMP1.xyz + _TMP4.xyz) - _TMP3.xyz;
}
}
} else {
_a0248 = _TMP95 - _TMP107;
_TMP51 = abs(_a0248);
_a0250 = _TMP99 - _TMP103;
_TMP52 = abs(_a0250);
if (_count2 >= 5.00000000E+00 || _TMP51 > _TMP52) {
_D1 = (_TMP2.xyz + _TMP3.xyz) - _TMP1.xyz;
}
}
_color1 = ((1.00000000E+00 - _p1)*(1.00000000E+00 - _q1))*_TMP1.xyz + (_p1*(1.00000000E+00 - _q1))*_B1 + ((1.00000000E+00 - _p1)*_q1)*_C1 + (_p1*_q1)*_D1;
_ret_0 = vec4(_color1.x, _color1.y, _color1.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,299 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _loc;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec2 _texCoord2;
vec4 _t1;
vec2 _loc;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1.xy = vec2(_ps.x, 0.00000000E+00);
_OUT._t1.zw = vec2(0.00000000E+00, _ps.y);
_OUT._loc = _texCoord*TextureSize;
_ret_0._position1 = _r0006;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
_ret_0._loc = _OUT._loc;
gl_Position = _r0006;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
TEX2.xy = _OUT._loc;
return;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
TEX2.xy = _ret_0._loc;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _loc;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord;
vec4 _t1;
vec2 _loc;
};
vec4 _ret_0;
vec3 _TMP24;
vec3 _TMP23;
float _TMP22;
float _TMP21;
float _TMP20;
float _TMP19;
float _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
float _TMP8;
float _TMP7;
float _TMP6;
float _TMP5;
float _TMP25;
float _TMP26;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _val0034;
vec2 _c0038;
vec2 _c0040;
vec2 _c0042;
float _TMP43;
float _TMP47;
float _TMP51;
float _TMP55;
float _TMP63;
vec2 _v0064;
float _TMP71;
vec2 _v0072;
float _a0080;
float _a0082;
float _a0084;
float _a0086;
vec2 _c0090;
vec2 _c0092;
vec2 _c0094;
vec2 _c0096;
vec2 _c0100;
vec2 _c0102;
vec2 _c0104;
vec2 _c0106;
float _x0108;
float _x0112;
float _x0116;
float _x0120;
float _x0124;
vec3 _a0130;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _pos;
vec2 _dir;
vec2 _g1;
vec2 _g2;
vec3 _B1;
vec3 _C1;
vec3 _D1;
float _p1;
float _q1;
vec3 _color_old;
vec2 _delta;
vec3 _first;
vec3 _second;
vec3 _mid_horiz;
vec3 _mid_vert;
vec3 _res;
float _color1;
vec3 _TMP30;
_TMP0 = fract(TEX2.xy);
_pos = _TMP0 - vec2( 5.00000000E-01, 5.00000000E-01);
_val0034 = vec2(float((_pos.x > 0.00000000E+00)), float((_pos.y > 0.00000000E+00)));
_dir = _val0034 - vec2(float((_pos.x < 0.00000000E+00)), float((_pos.y < 0.00000000E+00)));
_g1 = _dir*TEX1.xy;
_g2 = _dir*TEX1.zw;
_TMP1 = COMPAT_TEXTURE(Texture, TEX0.xy);
_c0038 = TEX0.xy + _g1;
_TMP2 = COMPAT_TEXTURE(Texture, _c0038);
_B1 = _TMP2.xyz;
_c0040 = TEX0.xy + _g2;
_TMP3 = COMPAT_TEXTURE(Texture, _c0040);
_C1 = _TMP3.xyz;
_c0042 = TEX0.xy + _g1 + _g2;
_TMP4 = COMPAT_TEXTURE(Texture, _c0042);
_D1 = _TMP4.xyz;
_TMP43 = dot(_TMP1.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP47 = dot(_TMP2.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP51 = dot(_TMP3.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_TMP55 = dot(_TMP4.xyz, vec3( 6.55360000E+04, 2.55000000E+02, 1.00000000E+00));
_p1 = abs(_pos.x);
_q1 = abs(_pos.y);
_v0064 = _g1 - _pos;
_TMP25 = dot(_v0064, _v0064);
_TMP26 = inversesqrt(_TMP25);
_TMP63 = 1.00000000E+00/_TMP26;
_v0072 = _g2 - _pos;
_TMP25 = dot(_v0072, _v0072);
_TMP26 = inversesqrt(_TMP25);
_TMP71 = 1.00000000E+00/_TMP26;
_a0080 = _TMP43 - _TMP55;
_TMP5 = abs(_a0080);
_a0082 = _TMP47 - _TMP51;
_TMP6 = abs(_a0082);
if (_TMP5 < _TMP6) {
if (_TMP63 < _TMP71) {
_C1 = (_TMP1.xyz + _TMP4.xyz) - _TMP2.xyz;
} else {
if (_TMP63 > _TMP71) {
_B1 = (_TMP1.xyz + _TMP4.xyz) - _TMP3.xyz;
}
}
} else {
_a0084 = _TMP43 - _TMP55;
_TMP7 = abs(_a0084);
_a0086 = _TMP47 - _TMP51;
_TMP8 = abs(_a0086);
if (_TMP7 > _TMP8) {
_D1 = (_TMP2.xyz + _TMP3.xyz) - _TMP1.xyz;
}
}
_color_old = ((1.00000000E+00 - _p1)*(1.00000000E+00 - _q1))*_TMP1.xyz + (_p1*(1.00000000E+00 - _q1))*_B1 + ((1.00000000E+00 - _p1)*_q1)*_C1 + (_p1*_q1)*_D1;
_delta = 5.00000000E-01/TextureSize;
_c0090 = TEX0.xy + vec2(-_delta.x, -_delta.y);
_TMP9 = COMPAT_TEXTURE(Texture, _c0090);
_c0092 = TEX0.xy + vec2(-_delta.x, 0.00000000E+00);
_TMP10 = COMPAT_TEXTURE(Texture, _c0092);
_c0094 = TEX0.xy + vec2(-_delta.x, _delta.y);
_TMP11 = COMPAT_TEXTURE(Texture, _c0094);
_c0096 = TEX0.xy + vec2(0.00000000E+00, -_delta.y);
_TMP12 = COMPAT_TEXTURE(Texture, _c0096);
_c0100 = TEX0.xy + vec2(0.00000000E+00, _delta.y);
_TMP14 = COMPAT_TEXTURE(Texture, _c0100);
_c0102 = TEX0.xy + vec2(_delta.x, -_delta.y);
_TMP15 = COMPAT_TEXTURE(Texture, _c0102);
_c0104 = TEX0.xy + vec2(_delta.x, 0.00000000E+00);
_TMP16 = COMPAT_TEXTURE(Texture, _c0104);
_c0106 = TEX0.xy + vec2(_delta.x, _delta.y);
_TMP17 = COMPAT_TEXTURE(Texture, _c0106);
_x0108 = TEX0.x*TextureSize.x + 5.00000000E-01;
_TMP18 = fract(_x0108);
_first = _TMP9.xyz + _TMP18*(_TMP15.xyz - _TMP9.xyz);
_x0112 = TEX0.x*TextureSize.x + 5.00000000E-01;
_TMP19 = fract(_x0112);
_second = _TMP11.xyz + _TMP19*(_TMP17.xyz - _TMP11.xyz);
_x0116 = TEX0.x*TextureSize.x + 5.00000000E-01;
_TMP20 = fract(_x0116);
_mid_horiz = _TMP10.xyz + _TMP20*(_TMP16.xyz - _TMP10.xyz);
_x0120 = TEX0.y*TextureSize.y + 5.00000000E-01;
_TMP21 = fract(_x0120);
_mid_vert = _TMP12.xyz + _TMP21*(_TMP14.xyz - _TMP12.xyz);
_x0124 = TEX0.y*TextureSize.y + 5.00000000E-01;
_TMP22 = fract(_x0124);
_res = _first + _TMP22*(_second - _first);
_TMP23 = _mid_horiz + 5.00000000E-01*(_mid_vert - _mid_horiz);
_a0130 = _res - _TMP23;
_TMP24 = abs(_a0130);
_color1 = (2.80000001E-01*(_res + _mid_horiz + _mid_vert) + 4.69999981E+00*_TMP24).x;
_TMP30 = (_color1 + _color_old)/2.00000000E+00;
_ret_0 = vec4(_TMP30.x, _TMP30.y, _TMP30.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,131 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
float _placeholder26;
};
vec4 _oPosition1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_VARYING vec4 COL0;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _oTexCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0006;
_oColor = COLOR;
_oTexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
float _placeholder27;
};
vec4 _ret_0;
vec2 _TMP3;
vec4 _TMP0;
input_dummy _IN1;
vec2 _x0026;
vec3 _mask0028;
vec2 _pos0028;
float _TMP29;
float _x0030;
COMPAT_VARYING vec4 TEX0;
uniform sampler2D Texture;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _res;
_TMP0 = COMPAT_TEXTURE(Texture, TEX0.xy);
_x0026 = TEX0.xy*(TextureSize.xy/InputSize.xy)*OutputSize.xy;
_TMP3 = floor(_x0026);
_pos0028 = _TMP3 + vec2( 5.00000000E-01, 5.00000000E-01);
_mask0028 = vec3( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01);
_pos0028.x = _pos0028.x + _pos0028.y*3.00000000E+00;
_x0030 = _pos0028.x/6.00000000E+00;
_TMP29 = fract(_x0030);
if (_TMP29 < 3.33000004E-01) {
_mask0028.x = 1.50000000E+00;
} else {
if (_TMP29 < 6.66000009E-01) {
_mask0028.y = 1.50000000E+00;
} else {
_mask0028.z = 1.50000000E+00;
}
}
_res = _TMP0.xyz*_mask0028;
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,136 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _CT;
COMPAT_VARYING vec4 _position2;
COMPAT_VARYING vec4 _color;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct VERTEX_OUTPUT {
vec4 _position1;
vec2 _texCoord1;
};
struct output_dummy {
vec4 _color;
};
struct VERTEX_INPUT {
vec4 _position2;
vec2 _CT;
};
VERTEX_OUTPUT _ret_0;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0005;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _CT;
COMPAT_VARYING vec4 _color;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct VERTEX_OUTPUT {
vec2 _texCoord;
};
struct output_dummy {
vec4 _color;
};
struct VERTEX_INPUT {
vec2 _CT;
};
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
vec2 _c0008;
vec2 _c0010;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _Color;
_c0008 = TEX0.xy - 1.00000005E-03;
_TMP0 = COMPAT_TEXTURE(Texture, _c0008);
_Color = vec4( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01, 1.00000000E+00) - _TMP0*2.00000000E+00;
_c0010 = TEX0.xy + 1.00000005E-03;
_TMP1 = COMPAT_TEXTURE(Texture, _c0010);
_Color = _Color + _TMP1*2.00000000E+00;
_Color.xyz = vec3((_Color.x + _Color.y + _Color.z)/3.00000000E+00, (_Color.x + _Color.y + _Color.z)/3.00000000E+00, (_Color.x + _Color.y + _Color.z)/3.00000000E+00);
FragColor = _Color;
return;
}
#endif

View file

@ -0,0 +1,448 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord;
};
out_vertex _ret_0;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0008;
_ret_0._color1 = COLOR;
_ret_0._texCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0008;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
};
vec4 _ret_0;
vec3 _TMP45;
float _TMP37;
vec3 _TMP44;
vec3 _TMP43;
vec3 _TMP42;
vec3 _TMP41;
vec4 _TMP32;
vec4 _TMP31;
vec4 _TMP30;
vec4 _TMP29;
vec4 _TMP28;
vec4 _TMP27;
vec4 _TMP26;
vec4 _TMP25;
vec4 _TMP24;
vec4 _TMP23;
vec4 _TMP22;
vec4 _TMP21;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP40;
vec4 _TMP39;
float _TMP50;
float _TMP49;
float _TMP48;
float _TMP47;
float _TMP38;
float _TMP46;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0060;
float _TMP61;
vec2 _v0062;
vec2 _pt20062;
float _TMP69;
vec2 _v0070;
vec2 _pt20070;
float _TMP77;
vec2 _v0078;
vec2 _pt20078;
float _TMP85;
vec2 _v0086;
vec2 _pt20086;
vec4 _x0094;
vec4 _res0094;
vec4 _x0096;
vec4 _x0106;
float _TMP115;
vec2 _v0116;
vec2 _pt20116;
float _TMP123;
vec2 _v0124;
float _TMP131;
vec2 _v0132;
vec2 _pt20132;
float _TMP139;
vec2 _v0140;
vec2 _pt20140;
vec4 _x0148;
vec4 _res0148;
vec4 _x0150;
vec4 _x0160;
float _TMP169;
vec2 _v0170;
vec2 _pt20170;
float _TMP177;
vec2 _v0178;
vec2 _pt20178;
float _TMP185;
vec2 _v0186;
vec2 _pt20186;
float _TMP193;
vec2 _v0194;
vec2 _pt20194;
vec4 _x0202;
vec4 _res0202;
vec4 _x0204;
vec4 _x0214;
float _TMP223;
vec2 _v0224;
vec2 _pt20224;
float _TMP231;
vec2 _v0232;
vec2 _pt20232;
float _TMP239;
vec2 _v0240;
vec2 _pt20240;
float _TMP247;
vec2 _v0248;
vec2 _pt20248;
vec4 _x0256;
vec4 _res0256;
vec4 _x0258;
vec4 _x0268;
vec2 _c0278;
vec2 _c0280;
vec2 _c0282;
vec2 _c0284;
vec2 _c0286;
vec2 _c0290;
vec2 _c0292;
vec2 _c0294;
vec2 _c0296;
vec2 _c0298;
vec2 _c0300;
vec2 _c0302;
vec2 _c0304;
vec2 _c0306;
vec2 _c0308;
vec3 _TMP309;
vec3 _TMP317;
vec3 _r0326;
vec3 _r0328;
vec3 _r0330;
vec3 _r0332;
vec4 _r0334;
vec3 _TMP345;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _color;
vec2 _dx;
vec2 _dy;
vec2 _pc;
vec2 _tc;
_pc = TEX0.xy*TextureSize;
_x0060 = _pc - vec2( 5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_x0060);
_tc = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
_pt20062 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0062 = _pt20062 - _pc;
_TMP38 = dot(_v0062, _v0062);
_TMP46 = inversesqrt(_TMP38);
_TMP61 = 1.00000000E+00/_TMP46;
_pt20070 = _tc - vec2( 0.00000000E+00, 1.00000000E+00);
_v0070 = _pt20070 - _pc;
_TMP38 = dot(_v0070, _v0070);
_TMP46 = inversesqrt(_TMP38);
_TMP69 = 1.00000000E+00/_TMP46;
_pt20078 = (_tc + vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0078 = _pt20078 - _pc;
_TMP38 = dot(_v0078, _v0078);
_TMP46 = inversesqrt(_TMP38);
_TMP77 = 1.00000000E+00/_TMP46;
_pt20086 = (_tc + vec2( 2.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0086 = _pt20086 - _pc;
_TMP38 = dot(_v0086, _v0086);
_TMP46 = inversesqrt(_TMP38);
_TMP85 = 1.00000000E+00/_TMP46;
_x0094 = vec4(_TMP61, _TMP69, _TMP77, _TMP85);
_x0096 = _x0094*1.22522116E+00;
_TMP47 = sin(_x0096.x);
_TMP48 = sin(_x0096.y);
_TMP49 = sin(_x0096.z);
_TMP50 = sin(_x0096.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0106 = _x0094*2.57610607E+00;
_TMP47 = sin(_x0106.x);
_TMP48 = sin(_x0106.y);
_TMP49 = sin(_x0106.z);
_TMP50 = sin(_x0106.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0094 = vec4(_x0094.x == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).x, _x0094.y == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).y, _x0094.z == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).z, _x0094.w == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).w);
_pt20116 = _tc - vec2( 1.00000000E+00, 0.00000000E+00);
_v0116 = _pt20116 - _pc;
_TMP38 = dot(_v0116, _v0116);
_TMP46 = inversesqrt(_TMP38);
_TMP115 = 1.00000000E+00/_TMP46;
_v0124 = _tc - _pc;
_TMP38 = dot(_v0124, _v0124);
_TMP46 = inversesqrt(_TMP38);
_TMP123 = 1.00000000E+00/_TMP46;
_pt20132 = _tc + vec2( 1.00000000E+00, 0.00000000E+00);
_v0132 = _pt20132 - _pc;
_TMP38 = dot(_v0132, _v0132);
_TMP46 = inversesqrt(_TMP38);
_TMP131 = 1.00000000E+00/_TMP46;
_pt20140 = _tc + vec2( 2.00000000E+00, 0.00000000E+00);
_v0140 = _pt20140 - _pc;
_TMP38 = dot(_v0140, _v0140);
_TMP46 = inversesqrt(_TMP38);
_TMP139 = 1.00000000E+00/_TMP46;
_x0148 = vec4(_TMP115, _TMP123, _TMP131, _TMP139);
_x0150 = _x0148*1.22522116E+00;
_TMP47 = sin(_x0150.x);
_TMP48 = sin(_x0150.y);
_TMP49 = sin(_x0150.z);
_TMP50 = sin(_x0150.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0160 = _x0148*2.57610607E+00;
_TMP47 = sin(_x0160.x);
_TMP48 = sin(_x0160.y);
_TMP49 = sin(_x0160.z);
_TMP50 = sin(_x0160.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0148 = vec4(_x0148.x == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).x, _x0148.y == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).y, _x0148.z == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).z, _x0148.w == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).w);
_pt20170 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0170 = _pt20170 - _pc;
_TMP38 = dot(_v0170, _v0170);
_TMP46 = inversesqrt(_TMP38);
_TMP169 = 1.00000000E+00/_TMP46;
_pt20178 = _tc + vec2( 0.00000000E+00, 1.00000000E+00);
_v0178 = _pt20178 - _pc;
_TMP38 = dot(_v0178, _v0178);
_TMP46 = inversesqrt(_TMP38);
_TMP177 = 1.00000000E+00/_TMP46;
_pt20186 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0186 = _pt20186 - _pc;
_TMP38 = dot(_v0186, _v0186);
_TMP46 = inversesqrt(_TMP38);
_TMP185 = 1.00000000E+00/_TMP46;
_pt20194 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0194 = _pt20194 - _pc;
_TMP38 = dot(_v0194, _v0194);
_TMP46 = inversesqrt(_TMP38);
_TMP193 = 1.00000000E+00/_TMP46;
_x0202 = vec4(_TMP169, _TMP177, _TMP185, _TMP193);
_x0204 = _x0202*1.22522116E+00;
_TMP47 = sin(_x0204.x);
_TMP48 = sin(_x0204.y);
_TMP49 = sin(_x0204.z);
_TMP50 = sin(_x0204.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0214 = _x0202*2.57610607E+00;
_TMP47 = sin(_x0214.x);
_TMP48 = sin(_x0214.y);
_TMP49 = sin(_x0214.z);
_TMP50 = sin(_x0214.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0202 = vec4(_x0202.x == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).x, _x0202.y == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).y, _x0202.z == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).z, _x0202.w == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).w);
_pt20224 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0224 = _pt20224 - _pc;
_TMP38 = dot(_v0224, _v0224);
_TMP46 = inversesqrt(_TMP38);
_TMP223 = 1.00000000E+00/_TMP46;
_pt20232 = _tc + vec2( 0.00000000E+00, 2.00000000E+00);
_v0232 = _pt20232 - _pc;
_TMP38 = dot(_v0232, _v0232);
_TMP46 = inversesqrt(_TMP38);
_TMP231 = 1.00000000E+00/_TMP46;
_pt20240 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0240 = _pt20240 - _pc;
_TMP38 = dot(_v0240, _v0240);
_TMP46 = inversesqrt(_TMP38);
_TMP239 = 1.00000000E+00/_TMP46;
_pt20248 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0248 = _pt20248 - _pc;
_TMP38 = dot(_v0248, _v0248);
_TMP46 = inversesqrt(_TMP38);
_TMP247 = 1.00000000E+00/_TMP46;
_x0256 = vec4(_TMP223, _TMP231, _TMP239, _TMP247);
_x0258 = _x0256*1.22522116E+00;
_TMP47 = sin(_x0258.x);
_TMP48 = sin(_x0258.y);
_TMP49 = sin(_x0258.z);
_TMP50 = sin(_x0258.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0268 = _x0256*2.57610607E+00;
_TMP47 = sin(_x0268.x);
_TMP48 = sin(_x0268.y);
_TMP49 = sin(_x0268.z);
_TMP50 = sin(_x0268.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0256 = vec4(_x0256.x == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).x, _x0256.y == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).y, _x0256.z == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).z, _x0256.w == 0.00000000E+00 ? 3.15629959E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).w);
_dx = vec2( 1.00000000E+00, 0.00000000E+00)/TextureSize;
_dy = vec2( 0.00000000E+00, 1.00000000E+00)/TextureSize;
_tc = _tc/TextureSize;
_c0278 = (_tc - _dx) - _dy;
_TMP17 = COMPAT_TEXTURE(Texture, _c0278);
_c0280 = _tc - _dy;
_TMP18 = COMPAT_TEXTURE(Texture, _c0280);
_c0282 = (_tc + _dx) - _dy;
_TMP19 = COMPAT_TEXTURE(Texture, _c0282);
_c0284 = (_tc + 2.00000000E+00*_dx) - _dy;
_TMP20 = COMPAT_TEXTURE(Texture, _c0284);
_c0286 = _tc - _dx;
_TMP21 = COMPAT_TEXTURE(Texture, _c0286);
_TMP22 = COMPAT_TEXTURE(Texture, _tc);
_c0290 = _tc + _dx;
_TMP23 = COMPAT_TEXTURE(Texture, _c0290);
_c0292 = _tc + 2.00000000E+00*_dx;
_TMP24 = COMPAT_TEXTURE(Texture, _c0292);
_c0294 = (_tc - _dx) + _dy;
_TMP25 = COMPAT_TEXTURE(Texture, _c0294);
_c0296 = _tc + _dy;
_TMP26 = COMPAT_TEXTURE(Texture, _c0296);
_c0298 = _tc + _dx + _dy;
_TMP27 = COMPAT_TEXTURE(Texture, _c0298);
_c0300 = _tc + 2.00000000E+00*_dx + _dy;
_TMP28 = COMPAT_TEXTURE(Texture, _c0300);
_c0302 = (_tc - _dx) + 2.00000000E+00*_dy;
_TMP29 = COMPAT_TEXTURE(Texture, _c0302);
_c0304 = _tc + 2.00000000E+00*_dy;
_TMP30 = COMPAT_TEXTURE(Texture, _c0304);
_c0306 = _tc + _dx + 2.00000000E+00*_dy;
_TMP31 = COMPAT_TEXTURE(Texture, _c0306);
_c0308 = _tc + 2.00000000E+00*_dx + 2.00000000E+00*_dy;
_TMP32 = COMPAT_TEXTURE(Texture, _c0308);
_TMP41 = min(_TMP26.xyz, _TMP27.xyz);
_TMP42 = min(_TMP23.xyz, _TMP41);
_TMP309 = min(_TMP22.xyz, _TMP42);
_TMP43 = max(_TMP26.xyz, _TMP27.xyz);
_TMP44 = max(_TMP23.xyz, _TMP43);
_TMP317 = max(_TMP22.xyz, _TMP44);
_r0326 = _res0094.x*_TMP17.xyz;
_r0326 = _r0326 + _res0094.y*_TMP18.xyz;
_r0326 = _r0326 + _res0094.z*_TMP19.xyz;
_r0326 = _r0326 + _res0094.w*_TMP20.xyz;
_r0328 = _res0148.x*_TMP21.xyz;
_r0328 = _r0328 + _res0148.y*_TMP22.xyz;
_r0328 = _r0328 + _res0148.z*_TMP23.xyz;
_r0328 = _r0328 + _res0148.w*_TMP24.xyz;
_color = _r0326 + _r0328;
_r0330 = _res0202.x*_TMP25.xyz;
_r0330 = _r0330 + _res0202.y*_TMP26.xyz;
_r0330 = _r0330 + _res0202.z*_TMP27.xyz;
_r0330 = _r0330 + _res0202.w*_TMP28.xyz;
_color = _color + _r0330;
_r0332 = _res0256.x*_TMP29.xyz;
_r0332 = _r0332 + _res0256.y*_TMP30.xyz;
_r0332 = _r0332 + _res0256.z*_TMP31.xyz;
_r0332 = _r0332 + _res0256.w*_TMP32.xyz;
_color = _color + _r0332;
_r0334.x = dot(_res0094, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.y = dot(_res0148, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.z = dot(_res0202, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.w = dot(_res0256, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP37 = dot(_r0334, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color = _color/_TMP37;
_TMP45 = min(_TMP317, _color);
_TMP345 = max(_TMP309, _TMP45);
_color = _color + 8.00000012E-01*(_TMP345 - _color);
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,448 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord;
};
out_vertex _ret_0;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0008;
_ret_0._color1 = COLOR;
_ret_0._texCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0008;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
};
vec4 _ret_0;
vec3 _TMP45;
float _TMP37;
vec3 _TMP44;
vec3 _TMP43;
vec3 _TMP42;
vec3 _TMP41;
vec4 _TMP32;
vec4 _TMP31;
vec4 _TMP30;
vec4 _TMP29;
vec4 _TMP28;
vec4 _TMP27;
vec4 _TMP26;
vec4 _TMP25;
vec4 _TMP24;
vec4 _TMP23;
vec4 _TMP22;
vec4 _TMP21;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP40;
vec4 _TMP39;
float _TMP50;
float _TMP49;
float _TMP48;
float _TMP47;
float _TMP38;
float _TMP46;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0060;
float _TMP61;
vec2 _v0062;
vec2 _pt20062;
float _TMP69;
vec2 _v0070;
vec2 _pt20070;
float _TMP77;
vec2 _v0078;
vec2 _pt20078;
float _TMP85;
vec2 _v0086;
vec2 _pt20086;
vec4 _x0094;
vec4 _res0094;
vec4 _x0096;
vec4 _x0106;
float _TMP115;
vec2 _v0116;
vec2 _pt20116;
float _TMP123;
vec2 _v0124;
float _TMP131;
vec2 _v0132;
vec2 _pt20132;
float _TMP139;
vec2 _v0140;
vec2 _pt20140;
vec4 _x0148;
vec4 _res0148;
vec4 _x0150;
vec4 _x0160;
float _TMP169;
vec2 _v0170;
vec2 _pt20170;
float _TMP177;
vec2 _v0178;
vec2 _pt20178;
float _TMP185;
vec2 _v0186;
vec2 _pt20186;
float _TMP193;
vec2 _v0194;
vec2 _pt20194;
vec4 _x0202;
vec4 _res0202;
vec4 _x0204;
vec4 _x0214;
float _TMP223;
vec2 _v0224;
vec2 _pt20224;
float _TMP231;
vec2 _v0232;
vec2 _pt20232;
float _TMP239;
vec2 _v0240;
vec2 _pt20240;
float _TMP247;
vec2 _v0248;
vec2 _pt20248;
vec4 _x0256;
vec4 _res0256;
vec4 _x0258;
vec4 _x0268;
vec2 _c0278;
vec2 _c0280;
vec2 _c0282;
vec2 _c0284;
vec2 _c0286;
vec2 _c0290;
vec2 _c0292;
vec2 _c0294;
vec2 _c0296;
vec2 _c0298;
vec2 _c0300;
vec2 _c0302;
vec2 _c0304;
vec2 _c0306;
vec2 _c0308;
vec3 _TMP309;
vec3 _TMP317;
vec3 _r0326;
vec3 _r0328;
vec3 _r0330;
vec3 _r0332;
vec4 _r0334;
vec3 _TMP345;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _color;
vec2 _dx;
vec2 _dy;
vec2 _pc;
vec2 _tc;
_pc = TEX0.xy*TextureSize;
_x0060 = _pc - vec2( 5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_x0060);
_tc = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
_pt20062 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0062 = _pt20062 - _pc;
_TMP38 = dot(_v0062, _v0062);
_TMP46 = inversesqrt(_TMP38);
_TMP61 = 1.00000000E+00/_TMP46;
_pt20070 = _tc - vec2( 0.00000000E+00, 1.00000000E+00);
_v0070 = _pt20070 - _pc;
_TMP38 = dot(_v0070, _v0070);
_TMP46 = inversesqrt(_TMP38);
_TMP69 = 1.00000000E+00/_TMP46;
_pt20078 = (_tc + vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0078 = _pt20078 - _pc;
_TMP38 = dot(_v0078, _v0078);
_TMP46 = inversesqrt(_TMP38);
_TMP77 = 1.00000000E+00/_TMP46;
_pt20086 = (_tc + vec2( 2.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0086 = _pt20086 - _pc;
_TMP38 = dot(_v0086, _v0086);
_TMP46 = inversesqrt(_TMP38);
_TMP85 = 1.00000000E+00/_TMP46;
_x0094 = vec4(_TMP61, _TMP69, _TMP77, _TMP85);
_x0096 = _x0094*1.31946886E+00;
_TMP47 = sin(_x0096.x);
_TMP48 = sin(_x0096.y);
_TMP49 = sin(_x0096.z);
_TMP50 = sin(_x0096.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0106 = _x0094*2.89026546E+00;
_TMP47 = sin(_x0106.x);
_TMP48 = sin(_x0106.y);
_TMP49 = sin(_x0106.z);
_TMP50 = sin(_x0106.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0094 = vec4(_x0094.x == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).x, _x0094.y == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).y, _x0094.z == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).z, _x0094.w == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).w);
_pt20116 = _tc - vec2( 1.00000000E+00, 0.00000000E+00);
_v0116 = _pt20116 - _pc;
_TMP38 = dot(_v0116, _v0116);
_TMP46 = inversesqrt(_TMP38);
_TMP115 = 1.00000000E+00/_TMP46;
_v0124 = _tc - _pc;
_TMP38 = dot(_v0124, _v0124);
_TMP46 = inversesqrt(_TMP38);
_TMP123 = 1.00000000E+00/_TMP46;
_pt20132 = _tc + vec2( 1.00000000E+00, 0.00000000E+00);
_v0132 = _pt20132 - _pc;
_TMP38 = dot(_v0132, _v0132);
_TMP46 = inversesqrt(_TMP38);
_TMP131 = 1.00000000E+00/_TMP46;
_pt20140 = _tc + vec2( 2.00000000E+00, 0.00000000E+00);
_v0140 = _pt20140 - _pc;
_TMP38 = dot(_v0140, _v0140);
_TMP46 = inversesqrt(_TMP38);
_TMP139 = 1.00000000E+00/_TMP46;
_x0148 = vec4(_TMP115, _TMP123, _TMP131, _TMP139);
_x0150 = _x0148*1.31946886E+00;
_TMP47 = sin(_x0150.x);
_TMP48 = sin(_x0150.y);
_TMP49 = sin(_x0150.z);
_TMP50 = sin(_x0150.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0160 = _x0148*2.89026546E+00;
_TMP47 = sin(_x0160.x);
_TMP48 = sin(_x0160.y);
_TMP49 = sin(_x0160.z);
_TMP50 = sin(_x0160.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0148 = vec4(_x0148.x == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).x, _x0148.y == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).y, _x0148.z == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).z, _x0148.w == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).w);
_pt20170 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0170 = _pt20170 - _pc;
_TMP38 = dot(_v0170, _v0170);
_TMP46 = inversesqrt(_TMP38);
_TMP169 = 1.00000000E+00/_TMP46;
_pt20178 = _tc + vec2( 0.00000000E+00, 1.00000000E+00);
_v0178 = _pt20178 - _pc;
_TMP38 = dot(_v0178, _v0178);
_TMP46 = inversesqrt(_TMP38);
_TMP177 = 1.00000000E+00/_TMP46;
_pt20186 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0186 = _pt20186 - _pc;
_TMP38 = dot(_v0186, _v0186);
_TMP46 = inversesqrt(_TMP38);
_TMP185 = 1.00000000E+00/_TMP46;
_pt20194 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0194 = _pt20194 - _pc;
_TMP38 = dot(_v0194, _v0194);
_TMP46 = inversesqrt(_TMP38);
_TMP193 = 1.00000000E+00/_TMP46;
_x0202 = vec4(_TMP169, _TMP177, _TMP185, _TMP193);
_x0204 = _x0202*1.31946886E+00;
_TMP47 = sin(_x0204.x);
_TMP48 = sin(_x0204.y);
_TMP49 = sin(_x0204.z);
_TMP50 = sin(_x0204.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0214 = _x0202*2.89026546E+00;
_TMP47 = sin(_x0214.x);
_TMP48 = sin(_x0214.y);
_TMP49 = sin(_x0214.z);
_TMP50 = sin(_x0214.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0202 = vec4(_x0202.x == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).x, _x0202.y == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).y, _x0202.z == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).z, _x0202.w == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).w);
_pt20224 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0224 = _pt20224 - _pc;
_TMP38 = dot(_v0224, _v0224);
_TMP46 = inversesqrt(_TMP38);
_TMP223 = 1.00000000E+00/_TMP46;
_pt20232 = _tc + vec2( 0.00000000E+00, 2.00000000E+00);
_v0232 = _pt20232 - _pc;
_TMP38 = dot(_v0232, _v0232);
_TMP46 = inversesqrt(_TMP38);
_TMP231 = 1.00000000E+00/_TMP46;
_pt20240 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0240 = _pt20240 - _pc;
_TMP38 = dot(_v0240, _v0240);
_TMP46 = inversesqrt(_TMP38);
_TMP239 = 1.00000000E+00/_TMP46;
_pt20248 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0248 = _pt20248 - _pc;
_TMP38 = dot(_v0248, _v0248);
_TMP46 = inversesqrt(_TMP38);
_TMP247 = 1.00000000E+00/_TMP46;
_x0256 = vec4(_TMP223, _TMP231, _TMP239, _TMP247);
_x0258 = _x0256*1.31946886E+00;
_TMP47 = sin(_x0258.x);
_TMP48 = sin(_x0258.y);
_TMP49 = sin(_x0258.z);
_TMP50 = sin(_x0258.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0268 = _x0256*2.89026546E+00;
_TMP47 = sin(_x0268.x);
_TMP48 = sin(_x0268.y);
_TMP49 = sin(_x0268.z);
_TMP50 = sin(_x0268.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0256 = vec4(_x0256.x == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).x, _x0256.y == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).y, _x0256.z == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).z, _x0256.w == 0.00000000E+00 ? 3.81361532E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).w);
_dx = vec2( 1.00000000E+00, 0.00000000E+00)/TextureSize;
_dy = vec2( 0.00000000E+00, 1.00000000E+00)/TextureSize;
_tc = _tc/TextureSize;
_c0278 = (_tc - _dx) - _dy;
_TMP17 = COMPAT_TEXTURE(Texture, _c0278);
_c0280 = _tc - _dy;
_TMP18 = COMPAT_TEXTURE(Texture, _c0280);
_c0282 = (_tc + _dx) - _dy;
_TMP19 = COMPAT_TEXTURE(Texture, _c0282);
_c0284 = (_tc + 2.00000000E+00*_dx) - _dy;
_TMP20 = COMPAT_TEXTURE(Texture, _c0284);
_c0286 = _tc - _dx;
_TMP21 = COMPAT_TEXTURE(Texture, _c0286);
_TMP22 = COMPAT_TEXTURE(Texture, _tc);
_c0290 = _tc + _dx;
_TMP23 = COMPAT_TEXTURE(Texture, _c0290);
_c0292 = _tc + 2.00000000E+00*_dx;
_TMP24 = COMPAT_TEXTURE(Texture, _c0292);
_c0294 = (_tc - _dx) + _dy;
_TMP25 = COMPAT_TEXTURE(Texture, _c0294);
_c0296 = _tc + _dy;
_TMP26 = COMPAT_TEXTURE(Texture, _c0296);
_c0298 = _tc + _dx + _dy;
_TMP27 = COMPAT_TEXTURE(Texture, _c0298);
_c0300 = _tc + 2.00000000E+00*_dx + _dy;
_TMP28 = COMPAT_TEXTURE(Texture, _c0300);
_c0302 = (_tc - _dx) + 2.00000000E+00*_dy;
_TMP29 = COMPAT_TEXTURE(Texture, _c0302);
_c0304 = _tc + 2.00000000E+00*_dy;
_TMP30 = COMPAT_TEXTURE(Texture, _c0304);
_c0306 = _tc + _dx + 2.00000000E+00*_dy;
_TMP31 = COMPAT_TEXTURE(Texture, _c0306);
_c0308 = _tc + 2.00000000E+00*_dx + 2.00000000E+00*_dy;
_TMP32 = COMPAT_TEXTURE(Texture, _c0308);
_TMP41 = min(_TMP26.xyz, _TMP27.xyz);
_TMP42 = min(_TMP23.xyz, _TMP41);
_TMP309 = min(_TMP22.xyz, _TMP42);
_TMP43 = max(_TMP26.xyz, _TMP27.xyz);
_TMP44 = max(_TMP23.xyz, _TMP43);
_TMP317 = max(_TMP22.xyz, _TMP44);
_r0326 = _res0094.x*_TMP17.xyz;
_r0326 = _r0326 + _res0094.y*_TMP18.xyz;
_r0326 = _r0326 + _res0094.z*_TMP19.xyz;
_r0326 = _r0326 + _res0094.w*_TMP20.xyz;
_r0328 = _res0148.x*_TMP21.xyz;
_r0328 = _r0328 + _res0148.y*_TMP22.xyz;
_r0328 = _r0328 + _res0148.z*_TMP23.xyz;
_r0328 = _r0328 + _res0148.w*_TMP24.xyz;
_color = _r0326 + _r0328;
_r0330 = _res0202.x*_TMP25.xyz;
_r0330 = _r0330 + _res0202.y*_TMP26.xyz;
_r0330 = _r0330 + _res0202.z*_TMP27.xyz;
_r0330 = _r0330 + _res0202.w*_TMP28.xyz;
_color = _color + _r0330;
_r0332 = _res0256.x*_TMP29.xyz;
_r0332 = _r0332 + _res0256.y*_TMP30.xyz;
_r0332 = _r0332 + _res0256.z*_TMP31.xyz;
_r0332 = _r0332 + _res0256.w*_TMP32.xyz;
_color = _color + _r0332;
_r0334.x = dot(_res0094, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.y = dot(_res0148, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.z = dot(_res0202, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.w = dot(_res0256, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP37 = dot(_r0334, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color = _color/_TMP37;
_TMP45 = min(_TMP317, _color);
_TMP345 = max(_TMP309, _TMP45);
_color = _color + 8.00000012E-01*(_TMP345 - _color);
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

448
tools/shaders/jinc2.cg.glsl Normal file
View file

@ -0,0 +1,448 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord;
};
out_vertex _ret_0;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0008;
_ret_0._color1 = COLOR;
_ret_0._texCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0008;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color1;
vec2 _texCoord;
};
vec4 _ret_0;
vec3 _TMP45;
float _TMP37;
vec3 _TMP44;
vec3 _TMP43;
vec3 _TMP42;
vec3 _TMP41;
vec4 _TMP32;
vec4 _TMP31;
vec4 _TMP30;
vec4 _TMP29;
vec4 _TMP28;
vec4 _TMP27;
vec4 _TMP26;
vec4 _TMP25;
vec4 _TMP24;
vec4 _TMP23;
vec4 _TMP22;
vec4 _TMP21;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP40;
vec4 _TMP39;
float _TMP50;
float _TMP49;
float _TMP48;
float _TMP47;
float _TMP38;
float _TMP46;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0060;
float _TMP61;
vec2 _v0062;
vec2 _pt20062;
float _TMP69;
vec2 _v0070;
vec2 _pt20070;
float _TMP77;
vec2 _v0078;
vec2 _pt20078;
float _TMP85;
vec2 _v0086;
vec2 _pt20086;
vec4 _x0094;
vec4 _res0094;
vec4 _x0096;
vec4 _x0106;
float _TMP115;
vec2 _v0116;
vec2 _pt20116;
float _TMP123;
vec2 _v0124;
float _TMP131;
vec2 _v0132;
vec2 _pt20132;
float _TMP139;
vec2 _v0140;
vec2 _pt20140;
vec4 _x0148;
vec4 _res0148;
vec4 _x0150;
vec4 _x0160;
float _TMP169;
vec2 _v0170;
vec2 _pt20170;
float _TMP177;
vec2 _v0178;
vec2 _pt20178;
float _TMP185;
vec2 _v0186;
vec2 _pt20186;
float _TMP193;
vec2 _v0194;
vec2 _pt20194;
vec4 _x0202;
vec4 _res0202;
vec4 _x0204;
vec4 _x0214;
float _TMP223;
vec2 _v0224;
vec2 _pt20224;
float _TMP231;
vec2 _v0232;
vec2 _pt20232;
float _TMP239;
vec2 _v0240;
vec2 _pt20240;
float _TMP247;
vec2 _v0248;
vec2 _pt20248;
vec4 _x0256;
vec4 _res0256;
vec4 _x0258;
vec4 _x0268;
vec2 _c0278;
vec2 _c0280;
vec2 _c0282;
vec2 _c0284;
vec2 _c0286;
vec2 _c0290;
vec2 _c0292;
vec2 _c0294;
vec2 _c0296;
vec2 _c0298;
vec2 _c0300;
vec2 _c0302;
vec2 _c0304;
vec2 _c0306;
vec2 _c0308;
vec3 _TMP309;
vec3 _TMP317;
vec3 _r0326;
vec3 _r0328;
vec3 _r0330;
vec3 _r0332;
vec4 _r0334;
vec3 _TMP345;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _color;
vec2 _dx;
vec2 _dy;
vec2 _pc;
vec2 _tc;
_pc = TEX0.xy*TextureSize;
_x0060 = _pc - vec2( 5.00000000E-01, 5.00000000E-01);
_TMP0 = floor(_x0060);
_tc = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
_pt20062 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0062 = _pt20062 - _pc;
_TMP38 = dot(_v0062, _v0062);
_TMP46 = inversesqrt(_TMP38);
_TMP61 = 1.00000000E+00/_TMP46;
_pt20070 = _tc - vec2( 0.00000000E+00, 1.00000000E+00);
_v0070 = _pt20070 - _pc;
_TMP38 = dot(_v0070, _v0070);
_TMP46 = inversesqrt(_TMP38);
_TMP69 = 1.00000000E+00/_TMP46;
_pt20078 = (_tc + vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0078 = _pt20078 - _pc;
_TMP38 = dot(_v0078, _v0078);
_TMP46 = inversesqrt(_TMP38);
_TMP77 = 1.00000000E+00/_TMP46;
_pt20086 = (_tc + vec2( 2.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
_v0086 = _pt20086 - _pc;
_TMP38 = dot(_v0086, _v0086);
_TMP46 = inversesqrt(_TMP38);
_TMP85 = 1.00000000E+00/_TMP46;
_x0094 = vec4(_TMP61, _TMP69, _TMP77, _TMP85);
_x0096 = _x0094*1.38230085E+00;
_TMP47 = sin(_x0096.x);
_TMP48 = sin(_x0096.y);
_TMP49 = sin(_x0096.z);
_TMP50 = sin(_x0096.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0106 = _x0094*2.57610607E+00;
_TMP47 = sin(_x0106.x);
_TMP48 = sin(_x0106.y);
_TMP49 = sin(_x0106.z);
_TMP50 = sin(_x0106.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0094 = vec4(_x0094.x == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).x, _x0094.y == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).y, _x0094.z == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).z, _x0094.w == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0094*_x0094)).w);
_pt20116 = _tc - vec2( 1.00000000E+00, 0.00000000E+00);
_v0116 = _pt20116 - _pc;
_TMP38 = dot(_v0116, _v0116);
_TMP46 = inversesqrt(_TMP38);
_TMP115 = 1.00000000E+00/_TMP46;
_v0124 = _tc - _pc;
_TMP38 = dot(_v0124, _v0124);
_TMP46 = inversesqrt(_TMP38);
_TMP123 = 1.00000000E+00/_TMP46;
_pt20132 = _tc + vec2( 1.00000000E+00, 0.00000000E+00);
_v0132 = _pt20132 - _pc;
_TMP38 = dot(_v0132, _v0132);
_TMP46 = inversesqrt(_TMP38);
_TMP131 = 1.00000000E+00/_TMP46;
_pt20140 = _tc + vec2( 2.00000000E+00, 0.00000000E+00);
_v0140 = _pt20140 - _pc;
_TMP38 = dot(_v0140, _v0140);
_TMP46 = inversesqrt(_TMP38);
_TMP139 = 1.00000000E+00/_TMP46;
_x0148 = vec4(_TMP115, _TMP123, _TMP131, _TMP139);
_x0150 = _x0148*1.38230085E+00;
_TMP47 = sin(_x0150.x);
_TMP48 = sin(_x0150.y);
_TMP49 = sin(_x0150.z);
_TMP50 = sin(_x0150.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0160 = _x0148*2.57610607E+00;
_TMP47 = sin(_x0160.x);
_TMP48 = sin(_x0160.y);
_TMP49 = sin(_x0160.z);
_TMP50 = sin(_x0160.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0148 = vec4(_x0148.x == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).x, _x0148.y == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).y, _x0148.z == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).z, _x0148.w == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0148*_x0148)).w);
_pt20170 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0170 = _pt20170 - _pc;
_TMP38 = dot(_v0170, _v0170);
_TMP46 = inversesqrt(_TMP38);
_TMP169 = 1.00000000E+00/_TMP46;
_pt20178 = _tc + vec2( 0.00000000E+00, 1.00000000E+00);
_v0178 = _pt20178 - _pc;
_TMP38 = dot(_v0178, _v0178);
_TMP46 = inversesqrt(_TMP38);
_TMP177 = 1.00000000E+00/_TMP46;
_pt20186 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0186 = _pt20186 - _pc;
_TMP38 = dot(_v0186, _v0186);
_TMP46 = inversesqrt(_TMP38);
_TMP185 = 1.00000000E+00/_TMP46;
_pt20194 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
_v0194 = _pt20194 - _pc;
_TMP38 = dot(_v0194, _v0194);
_TMP46 = inversesqrt(_TMP38);
_TMP193 = 1.00000000E+00/_TMP46;
_x0202 = vec4(_TMP169, _TMP177, _TMP185, _TMP193);
_x0204 = _x0202*1.38230085E+00;
_TMP47 = sin(_x0204.x);
_TMP48 = sin(_x0204.y);
_TMP49 = sin(_x0204.z);
_TMP50 = sin(_x0204.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0214 = _x0202*2.57610607E+00;
_TMP47 = sin(_x0214.x);
_TMP48 = sin(_x0214.y);
_TMP49 = sin(_x0214.z);
_TMP50 = sin(_x0214.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0202 = vec4(_x0202.x == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).x, _x0202.y == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).y, _x0202.z == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).z, _x0202.w == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0202*_x0202)).w);
_pt20224 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0224 = _pt20224 - _pc;
_TMP38 = dot(_v0224, _v0224);
_TMP46 = inversesqrt(_TMP38);
_TMP223 = 1.00000000E+00/_TMP46;
_pt20232 = _tc + vec2( 0.00000000E+00, 2.00000000E+00);
_v0232 = _pt20232 - _pc;
_TMP38 = dot(_v0232, _v0232);
_TMP46 = inversesqrt(_TMP38);
_TMP231 = 1.00000000E+00/_TMP46;
_pt20240 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0240 = _pt20240 - _pc;
_TMP38 = dot(_v0240, _v0240);
_TMP46 = inversesqrt(_TMP38);
_TMP239 = 1.00000000E+00/_TMP46;
_pt20248 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
_v0248 = _pt20248 - _pc;
_TMP38 = dot(_v0248, _v0248);
_TMP46 = inversesqrt(_TMP38);
_TMP247 = 1.00000000E+00/_TMP46;
_x0256 = vec4(_TMP223, _TMP231, _TMP239, _TMP247);
_x0258 = _x0256*1.38230085E+00;
_TMP47 = sin(_x0258.x);
_TMP48 = sin(_x0258.y);
_TMP49 = sin(_x0258.z);
_TMP50 = sin(_x0258.w);
_TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0268 = _x0256*2.57610607E+00;
_TMP47 = sin(_x0268.x);
_TMP48 = sin(_x0268.y);
_TMP49 = sin(_x0268.z);
_TMP50 = sin(_x0268.w);
_TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_res0256 = vec4(_x0256.x == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).x, _x0256.y == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).y, _x0256.z == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).z, _x0256.w == 0.00000000E+00 ? 3.56095362E+00 : ((_TMP39*_TMP40)/(_x0256*_x0256)).w);
_dx = vec2( 1.00000000E+00, 0.00000000E+00)/TextureSize;
_dy = vec2( 0.00000000E+00, 1.00000000E+00)/TextureSize;
_tc = _tc/TextureSize;
_c0278 = (_tc - _dx) - _dy;
_TMP17 = COMPAT_TEXTURE(Texture, _c0278);
_c0280 = _tc - _dy;
_TMP18 = COMPAT_TEXTURE(Texture, _c0280);
_c0282 = (_tc + _dx) - _dy;
_TMP19 = COMPAT_TEXTURE(Texture, _c0282);
_c0284 = (_tc + 2.00000000E+00*_dx) - _dy;
_TMP20 = COMPAT_TEXTURE(Texture, _c0284);
_c0286 = _tc - _dx;
_TMP21 = COMPAT_TEXTURE(Texture, _c0286);
_TMP22 = COMPAT_TEXTURE(Texture, _tc);
_c0290 = _tc + _dx;
_TMP23 = COMPAT_TEXTURE(Texture, _c0290);
_c0292 = _tc + 2.00000000E+00*_dx;
_TMP24 = COMPAT_TEXTURE(Texture, _c0292);
_c0294 = (_tc - _dx) + _dy;
_TMP25 = COMPAT_TEXTURE(Texture, _c0294);
_c0296 = _tc + _dy;
_TMP26 = COMPAT_TEXTURE(Texture, _c0296);
_c0298 = _tc + _dx + _dy;
_TMP27 = COMPAT_TEXTURE(Texture, _c0298);
_c0300 = _tc + 2.00000000E+00*_dx + _dy;
_TMP28 = COMPAT_TEXTURE(Texture, _c0300);
_c0302 = (_tc - _dx) + 2.00000000E+00*_dy;
_TMP29 = COMPAT_TEXTURE(Texture, _c0302);
_c0304 = _tc + 2.00000000E+00*_dy;
_TMP30 = COMPAT_TEXTURE(Texture, _c0304);
_c0306 = _tc + _dx + 2.00000000E+00*_dy;
_TMP31 = COMPAT_TEXTURE(Texture, _c0306);
_c0308 = _tc + 2.00000000E+00*_dx + 2.00000000E+00*_dy;
_TMP32 = COMPAT_TEXTURE(Texture, _c0308);
_TMP41 = min(_TMP26.xyz, _TMP27.xyz);
_TMP42 = min(_TMP23.xyz, _TMP41);
_TMP309 = min(_TMP22.xyz, _TMP42);
_TMP43 = max(_TMP26.xyz, _TMP27.xyz);
_TMP44 = max(_TMP23.xyz, _TMP43);
_TMP317 = max(_TMP22.xyz, _TMP44);
_r0326 = _res0094.x*_TMP17.xyz;
_r0326 = _r0326 + _res0094.y*_TMP18.xyz;
_r0326 = _r0326 + _res0094.z*_TMP19.xyz;
_r0326 = _r0326 + _res0094.w*_TMP20.xyz;
_r0328 = _res0148.x*_TMP21.xyz;
_r0328 = _r0328 + _res0148.y*_TMP22.xyz;
_r0328 = _r0328 + _res0148.z*_TMP23.xyz;
_r0328 = _r0328 + _res0148.w*_TMP24.xyz;
_color = _r0326 + _r0328;
_r0330 = _res0202.x*_TMP25.xyz;
_r0330 = _r0330 + _res0202.y*_TMP26.xyz;
_r0330 = _r0330 + _res0202.z*_TMP27.xyz;
_r0330 = _r0330 + _res0202.w*_TMP28.xyz;
_color = _color + _r0330;
_r0332 = _res0256.x*_TMP29.xyz;
_r0332 = _r0332 + _res0256.y*_TMP30.xyz;
_r0332 = _r0332 + _res0256.z*_TMP31.xyz;
_r0332 = _r0332 + _res0256.w*_TMP32.xyz;
_color = _color + _r0332;
_r0334.x = dot(_res0094, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.y = dot(_res0148, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.z = dot(_res0202, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_r0334.w = dot(_res0256, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP37 = dot(_r0334, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_color = _color/_TMP37;
_TMP45 = min(_TMP317, _color);
_TMP345 = max(_TMP309, _TMP45);
_color = _color + 5.00000000E-01*(_TMP345 - _color);
_ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,279 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0007;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0007 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0007 = _r0007 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0007 = _r0007 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0007 = _r0007 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0007;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0007;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
float _TMP13;
float _TMP12;
input_dummy _IN1;
uniform sampler2D Texture;
float _TMP21;
float _x0022;
float _a0024;
float _a0026;
float _TMP27;
float _a0030;
float _a0032;
float _TMP33;
float _x0034;
float _a0036;
float _a0038;
float _TMP39;
float _x0040;
float _a0042;
float _a0044;
float _TMP45;
float _x0046;
float _a0048;
float _a0050;
float _TMP51;
float _a0054;
float _a0056;
float _TMP57;
float _x0058;
float _a0060;
float _a0062;
float _TMP63;
float _x0064;
float _a0066;
float _a0068;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _ps;
vec2 _crd[16];
vec3 _pix[16];
vec2 _dx;
vec2 _dy;
vec2 _pixcoord;
vec2 _fract;
vec2 _coord0;
output_dummy _OUT;
vec3 _TMP18;
_ps = vec2(9.99000013E-01/TextureSize.x, 9.99000013E-01/TextureSize.y);
_dx = vec2(_ps.x, 0.00000000E+00);
_dy = vec2(0.00000000E+00, _ps.y);
_pixcoord = TEX0.xy/_ps;
_fract = fract(_pixcoord);
_coord0 = TEX0.xy - _fract*_ps;
_crd[(4*0 + 0)] = _coord0 - _ps;
_crd[(4*1 + 0)] = _crd[(4*0 + 0)] + _dx;
_crd[(4*2 + 0)] = _crd[(4*1 + 0)] + _dx;
_crd[(4*0 + 1)] = _crd[(4*0 + 0)] + _dy;
_crd[(4*1 + 1)] = _crd[(4*0 + 1)] + _dx;
_crd[(4*2 + 1)] = _crd[(4*1 + 1)] + _dx;
_crd[(4*3 + 1)] = _crd[(4*2 + 1)] + _dx;
_crd[(4*0 + 2)] = _crd[(4*0 + 1)] + _dy;
_crd[(4*1 + 2)] = _crd[(4*0 + 2)] + _dx;
_crd[(4*2 + 2)] = _crd[(4*1 + 2)] + _dx;
_crd[(4*3 + 2)] = _crd[(4*2 + 2)] + _dx;
_crd[(4*0 + 3)] = _crd[(4*0 + 2)] + _dy;
_crd[(4*1 + 3)] = _crd[(4*0 + 3)] + _dx;
_crd[(4*2 + 3)] = _crd[(4*1 + 3)] + _dx;
_x0022 = 1.00000000E+00 + _fract.x;
if (_x0022 == 0.00000000E+00) {
_TMP21 = 4.93480253E+00;
} else {
_a0024 = _x0022*1.57079637E+00;
_TMP12 = sin(_a0024);
_a0026 = _x0022*3.14159274E+00;
_TMP13 = sin(_a0026);
_TMP21 = (_TMP12*_TMP13)/(_x0022*_x0022);
}
if (_fract.x == 0.00000000E+00) {
_TMP27 = 4.93480253E+00;
} else {
_a0030 = _fract.x*1.57079637E+00;
_TMP12 = sin(_a0030);
_a0032 = _fract.x*3.14159274E+00;
_TMP13 = sin(_a0032);
_TMP27 = (_TMP12*_TMP13)/(_fract.x*_fract.x);
}
_x0034 = 1.00000000E+00 - _fract.x;
if (_x0034 == 0.00000000E+00) {
_TMP33 = 4.93480253E+00;
} else {
_a0036 = _x0034*1.57079637E+00;
_TMP12 = sin(_a0036);
_a0038 = _x0034*3.14159274E+00;
_TMP13 = sin(_a0038);
_TMP33 = (_TMP12*_TMP13)/(_x0034*_x0034);
}
_x0040 = 2.00000000E+00 - _fract.x;
if (_x0040 == 0.00000000E+00) {
_TMP39 = 4.93480253E+00;
} else {
_a0042 = _x0040*1.57079637E+00;
_TMP12 = sin(_a0042);
_a0044 = _x0040*3.14159274E+00;
_TMP13 = sin(_a0044);
_TMP39 = (_TMP12*_TMP13)/(_x0040*_x0040);
}
_x0046 = 1.00000000E+00 + _fract.y;
if (_x0046 == 0.00000000E+00) {
_TMP45 = 4.93480253E+00;
} else {
_a0048 = _x0046*1.57079637E+00;
_TMP12 = sin(_a0048);
_a0050 = _x0046*3.14159274E+00;
_TMP13 = sin(_a0050);
_TMP45 = (_TMP12*_TMP13)/(_x0046*_x0046);
}
if (_fract.y == 0.00000000E+00) {
_TMP51 = 4.93480253E+00;
} else {
_a0054 = _fract.y*1.57079637E+00;
_TMP12 = sin(_a0054);
_a0056 = _fract.y*3.14159274E+00;
_TMP13 = sin(_a0056);
_TMP51 = (_TMP12*_TMP13)/(_fract.y*_fract.y);
}
_x0058 = 1.00000000E+00 - _fract.y;
if (_x0058 == 0.00000000E+00) {
_TMP57 = 4.93480253E+00;
} else {
_a0060 = _x0058*1.57079637E+00;
_TMP12 = sin(_a0060);
_a0062 = _x0058*3.14159274E+00;
_TMP13 = sin(_a0062);
_TMP57 = (_TMP12*_TMP13)/(_x0058*_x0058);
}
_x0064 = 2.00000000E+00 - _fract.y;
if (_x0064 == 0.00000000E+00) {
_TMP63 = 4.93480253E+00;
} else {
_a0066 = _x0064*1.57079637E+00;
_TMP12 = sin(_a0066);
_a0068 = _x0064*3.14159274E+00;
_TMP13 = sin(_a0068);
_TMP63 = (_TMP12*_TMP13)/(_x0064*_x0064);
}
_TMP0 = COMPAT_TEXTURE(Texture, _crd[(4*1 + 0)]);
_TMP1 = COMPAT_TEXTURE(Texture, _crd[(4*2 + 0)]);
_TMP2 = COMPAT_TEXTURE(Texture, _crd[(4*0 + 1)]);
_TMP3 = COMPAT_TEXTURE(Texture, _crd[(4*1 + 1)]);
_TMP4 = COMPAT_TEXTURE(Texture, _crd[(4*2 + 1)]);
_TMP5 = COMPAT_TEXTURE(Texture, _crd[(4*3 + 1)]);
_TMP6 = COMPAT_TEXTURE(Texture, _crd[(4*0 + 2)]);
_TMP7 = COMPAT_TEXTURE(Texture, _crd[(4*1 + 2)]);
_TMP8 = COMPAT_TEXTURE(Texture, _crd[(4*2 + 2)]);
_TMP9 = COMPAT_TEXTURE(Texture, _crd[(4*3 + 2)]);
_TMP10 = COMPAT_TEXTURE(Texture, _crd[(4*1 + 3)]);
_TMP11 = COMPAT_TEXTURE(Texture, _crd[(4*2 + 3)]);
_pix[(4*1 + 0)] = (_TMP0.xyz*_TMP27 + _TMP1.xyz*_TMP33)*_TMP45;
_pix[(4*0 + 1)] = (_TMP2.xyz*_TMP21 + _TMP3.xyz*_TMP27 + _TMP4.xyz*_TMP33 + _TMP5.xyz*_TMP39)*_TMP51;
_pix[(4*0 + 2)] = (_TMP6.xyz*_TMP21 + _TMP7.xyz*_TMP27 + _TMP8.xyz*_TMP33 + _TMP9.xyz*_TMP39)*_TMP57;
_pix[(4*1 + 3)] = (_TMP10.xyz*_TMP27 + _TMP11.xyz*_TMP33)*_TMP63;
_TMP18 = (_pix[(4*1 + 0)] + _pix[(4*0 + 1)] + _pix[(4*0 + 2)] + _pix[(4*1 + 3)])/((_TMP21 + _TMP27 + _TMP33 + _TMP39)*(_TMP45 + _TMP51 + _TMP57 + _TMP63) - (_TMP21 + _TMP39)*(_TMP45 + _TMP63));
_OUT._color = vec4(_TMP18.x, _TMP18.y, _TMP18.z, 1.00000000E+00);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,279 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _ps;
vec2 _tex;
out_vertex _TMP4;
_ps = 1.00000000E+00/TextureSize;
_tex = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_TMP4._t1 = _tex.xxyy + vec4(-_ps.x, 0.00000000E+00, -_ps.y, 0.00000000E+00);
_TMP4._t2 = _tex.xxyy + vec4(_ps.x, 2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00);
_TMP4._t3 = _tex.xxyy + vec4(-_ps.x, 0.00000000E+00, _ps.y, 2.00000000E+00*_ps.y);
_TMP4._t4 = _tex.xxyy + vec4(_ps.x, 2.00000000E+00*_ps.x, _ps.y, 2.00000000E+00*_ps.y);
_ret_0._position1 = _r0008;
_ret_0._color1 = COLOR;
_ret_0._texCoord = _tex;
_ret_0._t1 = _TMP4._t1;
_ret_0._t2 = _TMP4._t2;
_ret_0._t3 = _TMP4._t3;
_ret_0._t4 = _TMP4._t4;
gl_Position = _r0008;
COL0 = COLOR;
TEX0.xy = _tex;
TEX1 = _TMP4._t1;
TEX2 = _TMP4._t2;
TEX3 = _TMP4._t3;
TEX4 = _TMP4._t4;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
};
vec4 _ret_0;
float _TMP18;
float _TMP17;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
vec4 _TMP20;
vec4 _TMP19;
float _TMP24;
float _TMP23;
float _TMP22;
float _TMP21;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0034;
vec4 _x0036;
vec4 _res0036;
vec4 _x0038;
vec4 _x0048;
vec4 _x0058;
vec4 _res0058;
vec4 _x0060;
vec4 _x0070;
vec3 _r0112;
vec3 _r0114;
vec3 _r0116;
vec3 _r0118;
vec3 _r0120;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _fract;
vec3 _TMP28;
vec3 _TMP29[4];
vec3 _TMP32[4];
_x0034 = TEX0.xy*TextureSize;
_fract = fract(_x0034);
_x0036 = vec4(1.00000000E+00 + _fract.x, _fract.x, 1.00000000E+00 - _fract.x, 2.00000000E+00 - _fract.x);
_x0038 = _x0036*1.57079637E+00;
_TMP21 = sin(_x0038.x);
_TMP22 = sin(_x0038.y);
_TMP23 = sin(_x0038.z);
_TMP24 = sin(_x0038.w);
_TMP19 = vec4(_TMP21, _TMP22, _TMP23, _TMP24);
_x0048 = _x0036*3.14159274E+00;
_TMP21 = sin(_x0048.x);
_TMP22 = sin(_x0048.y);
_TMP23 = sin(_x0048.z);
_TMP24 = sin(_x0048.w);
_TMP20 = vec4(_TMP21, _TMP22, _TMP23, _TMP24);
_res0036 = vec4(_x0036.x == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0036*_x0036)).x, _x0036.y == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0036*_x0036)).y, _x0036.z == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0036*_x0036)).z, _x0036.w == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0036*_x0036)).w);
_x0058 = vec4(1.00000000E+00 + _fract.y, _fract.y, 1.00000000E+00 - _fract.y, 2.00000000E+00 - _fract.y);
_x0060 = _x0058*1.57079637E+00;
_TMP21 = sin(_x0060.x);
_TMP22 = sin(_x0060.y);
_TMP23 = sin(_x0060.z);
_TMP24 = sin(_x0060.w);
_TMP19 = vec4(_TMP21, _TMP22, _TMP23, _TMP24);
_x0070 = _x0058*3.14159274E+00;
_TMP21 = sin(_x0070.x);
_TMP22 = sin(_x0070.y);
_TMP23 = sin(_x0070.z);
_TMP24 = sin(_x0070.w);
_TMP20 = vec4(_TMP21, _TMP22, _TMP23, _TMP24);
_res0058 = vec4(_x0058.x == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0058*_x0058)).x, _x0058.y == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0058*_x0058)).y, _x0058.z == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0058*_x0058)).z, _x0058.w == 0.00000000E+00 ? 4.93480253E+00 : ((_TMP19*_TMP20)/(_x0058*_x0058)).w);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xz);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yz);
_TMP2 = COMPAT_TEXTURE(Texture, TEX2.xz);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.yz);
_TMP4 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX0.xy);
_TMP6 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.xz);
_TMP9 = COMPAT_TEXTURE(Texture, TEX3.yz);
_TMP10 = COMPAT_TEXTURE(Texture, TEX4.xz);
_TMP11 = COMPAT_TEXTURE(Texture, TEX4.yz);
_TMP12 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP13 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP14 = COMPAT_TEXTURE(Texture, TEX4.xw);
_TMP15 = COMPAT_TEXTURE(Texture, TEX4.yw);
_TMP32[0] = -_TMP0.xyz;
_TMP32[3] = -_TMP3.xyz;
_r0112 = _res0036.x*_TMP32[0];
_r0112 = _r0112 + _res0036.y*_TMP1.xyz;
_r0112 = _r0112 + _res0036.z*_TMP2.xyz;
_r0112 = _r0112 + _res0036.w*_TMP32[3];
_r0114 = _res0036.x*_TMP4.xyz;
_r0114 = _r0114 + _res0036.y*_TMP5.xyz;
_r0114 = _r0114 + _res0036.z*_TMP6.xyz;
_r0114 = _r0114 + _res0036.w*_TMP7.xyz;
_r0116 = _res0036.x*_TMP8.xyz;
_r0116 = _r0116 + _res0036.y*_TMP9.xyz;
_r0116 = _r0116 + _res0036.z*_TMP10.xyz;
_r0116 = _r0116 + _res0036.w*_TMP11.xyz;
_TMP29[0] = -_TMP12.xyz;
_TMP29[3] = -_TMP15.xyz;
_r0118 = _res0036.x*_TMP29[0];
_r0118 = _r0118 + _res0036.y*_TMP13.xyz;
_r0118 = _r0118 + _res0036.z*_TMP14.xyz;
_r0118 = _r0118 + _res0036.w*_TMP29[3];
_r0120 = _res0058.x*_r0112;
_r0120 = _r0120 + _res0058.y*_r0114;
_r0120 = _r0120 + _res0058.z*_r0116;
_r0120 = _r0120 + _res0058.w*_r0118;
_TMP17 = dot(_res0036, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP18 = dot(_res0058, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP28 = _r0120/(_TMP17*_TMP18 - 2.00000000E+00*(_res0036.x + _res0036.w)*(_res0058.x + _res0058.w));
_ret_0 = vec4(_TMP28.x, _TMP28.y, _TMP28.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,270 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0006;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec3 _TMP11;
vec3 _TMP10;
vec3 _TMP9;
vec4 _TMP17;
float _TMP8;
vec4 _TMP7;
vec4 _TMP6;
float _TMP16;
float _TMP15;
float _TMP14;
float _TMP13;
vec4 _TMP5;
input_dummy _IN1;
uniform sampler2D Texture;
vec2 _x0025;
vec4 _ret0027;
vec4 _a0029;
vec4 _TMP30;
vec4 _x0045;
vec4 _ret0057;
vec4 _a0059;
vec4 _TMP60;
vec4 _x0075;
vec2 _c0091;
vec2 _c0095;
vec2 _c0099;
vec2 _c0103;
vec3 _r0105;
float _ypos0107;
vec2 _c0111;
vec2 _c0115;
vec2 _c0119;
vec2 _c0123;
vec3 _r0125;
float _ypos0127;
vec2 _c0131;
vec2 _c0135;
vec2 _c0139;
vec2 _c0143;
vec3 _r0145;
float _ypos0147;
vec2 _c0151;
vec2 _c0155;
vec2 _c0159;
vec2 _c0163;
vec3 _r0165;
vec3 _r0167;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _stepxy;
vec2 _pos;
vec2 _f;
vec2 _xystart;
vec4 _xpos2;
vec4 _linetaps1;
vec4 _columntaps;
output_dummy _OUT;
_stepxy = 1.00000000E+00/TextureSize.xy;
_pos = TEX0.xy + _stepxy*5.00000000E-01;
_x0025 = _pos/_stepxy;
_f = fract(_x0025);
_xystart = (-1.50000000E+00 - _f)*_stepxy + _pos;
_xpos2 = vec4(_xystart.x, _xystart.x + _stepxy.x, _xystart.x + _stepxy.x*2.00000000E+00, _xystart.x + _stepxy.x*3.00000000E+00);
_a0029 = 3.14159274E+00*vec4(1.00000000E+00 + _f.x, _f.x, 1.00000000E+00 - _f.x, 2.00000000E+00 - _f.x);
_TMP5 = abs(_a0029);
_TMP30 = max(_TMP5, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP13 = sin(_TMP30.x);
_TMP14 = sin(_TMP30.y);
_TMP15 = sin(_TMP30.z);
_TMP16 = sin(_TMP30.w);
_TMP6 = vec4(_TMP13, _TMP14, _TMP15, _TMP16);
_x0045 = _TMP30/2.00000000E+00;
_TMP13 = sin(_x0045.x);
_TMP14 = sin(_x0045.y);
_TMP15 = sin(_x0045.z);
_TMP16 = sin(_x0045.w);
_TMP7 = vec4(_TMP13, _TMP14, _TMP15, _TMP16);
_ret0027 = (_TMP6*_TMP7)/(_TMP30*_TMP30);
_TMP8 = dot(_ret0027, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_linetaps1 = _ret0027/_TMP8;
_a0059 = 3.14159274E+00*vec4(1.00000000E+00 + _f.y, _f.y, 1.00000000E+00 - _f.y, 2.00000000E+00 - _f.y);
_TMP5 = abs(_a0059);
_TMP60 = max(_TMP5, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP13 = sin(_TMP60.x);
_TMP14 = sin(_TMP60.y);
_TMP15 = sin(_TMP60.z);
_TMP16 = sin(_TMP60.w);
_TMP6 = vec4(_TMP13, _TMP14, _TMP15, _TMP16);
_x0075 = _TMP60/2.00000000E+00;
_TMP13 = sin(_x0075.x);
_TMP14 = sin(_x0075.y);
_TMP15 = sin(_x0075.z);
_TMP16 = sin(_x0075.w);
_TMP7 = vec4(_TMP13, _TMP14, _TMP15, _TMP16);
_ret0057 = (_TMP6*_TMP7)/(_TMP60*_TMP60);
_TMP8 = dot(_ret0057, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_columntaps = _ret0057/_TMP8;
_c0091 = vec2(_xpos2.x, _xystart.y);
_TMP17 = COMPAT_TEXTURE(Texture, _c0091);
_TMP9 = _TMP17.xyz;
_c0095 = vec2(_xpos2.y, _xystart.y);
_TMP17 = COMPAT_TEXTURE(Texture, _c0095);
_TMP10 = _TMP17.xyz;
_c0099 = vec2(_xpos2.z, _xystart.y);
_TMP17 = COMPAT_TEXTURE(Texture, _c0099);
_TMP11 = _TMP17.xyz;
_c0103 = vec2(_xpos2.w, _xystart.y);
_TMP17 = COMPAT_TEXTURE(Texture, _c0103);
_r0105 = _linetaps1.x*_TMP9;
_r0105 = _r0105 + _linetaps1.y*_TMP10;
_r0105 = _r0105 + _linetaps1.z*_TMP11;
_r0105 = _r0105 + _linetaps1.w*_TMP17.xyz;
_ypos0107 = _xystart.y + _stepxy.y;
_c0111 = vec2(_xpos2.x, _ypos0107);
_TMP17 = COMPAT_TEXTURE(Texture, _c0111);
_TMP9 = _TMP17.xyz;
_c0115 = vec2(_xpos2.y, _ypos0107);
_TMP17 = COMPAT_TEXTURE(Texture, _c0115);
_TMP10 = _TMP17.xyz;
_c0119 = vec2(_xpos2.z, _ypos0107);
_TMP17 = COMPAT_TEXTURE(Texture, _c0119);
_TMP11 = _TMP17.xyz;
_c0123 = vec2(_xpos2.w, _ypos0107);
_TMP17 = COMPAT_TEXTURE(Texture, _c0123);
_r0125 = _linetaps1.x*_TMP9;
_r0125 = _r0125 + _linetaps1.y*_TMP10;
_r0125 = _r0125 + _linetaps1.z*_TMP11;
_r0125 = _r0125 + _linetaps1.w*_TMP17.xyz;
_ypos0127 = _xystart.y + _stepxy.y*2.00000000E+00;
_c0131 = vec2(_xpos2.x, _ypos0127);
_TMP17 = COMPAT_TEXTURE(Texture, _c0131);
_TMP9 = _TMP17.xyz;
_c0135 = vec2(_xpos2.y, _ypos0127);
_TMP17 = COMPAT_TEXTURE(Texture, _c0135);
_TMP10 = _TMP17.xyz;
_c0139 = vec2(_xpos2.z, _ypos0127);
_TMP17 = COMPAT_TEXTURE(Texture, _c0139);
_TMP11 = _TMP17.xyz;
_c0143 = vec2(_xpos2.w, _ypos0127);
_TMP17 = COMPAT_TEXTURE(Texture, _c0143);
_r0145 = _linetaps1.x*_TMP9;
_r0145 = _r0145 + _linetaps1.y*_TMP10;
_r0145 = _r0145 + _linetaps1.z*_TMP11;
_r0145 = _r0145 + _linetaps1.w*_TMP17.xyz;
_ypos0147 = _xystart.y + _stepxy.y*3.00000000E+00;
_c0151 = vec2(_xpos2.x, _ypos0147);
_TMP17 = COMPAT_TEXTURE(Texture, _c0151);
_TMP9 = _TMP17.xyz;
_c0155 = vec2(_xpos2.y, _ypos0147);
_TMP17 = COMPAT_TEXTURE(Texture, _c0155);
_TMP10 = _TMP17.xyz;
_c0159 = vec2(_xpos2.z, _ypos0147);
_TMP17 = COMPAT_TEXTURE(Texture, _c0159);
_TMP11 = _TMP17.xyz;
_c0163 = vec2(_xpos2.w, _ypos0147);
_TMP17 = COMPAT_TEXTURE(Texture, _c0163);
_r0165 = _linetaps1.x*_TMP9;
_r0165 = _r0165 + _linetaps1.y*_TMP10;
_r0165 = _r0165 + _linetaps1.z*_TMP11;
_r0165 = _r0165 + _linetaps1.w*_TMP17.xyz;
_r0167 = _columntaps.x*_r0105;
_r0167 = _r0167 + _columntaps.y*_r0125;
_r0167 = _r0167 + _columntaps.z*_r0145;
_r0167 = _r0167 + _columntaps.w*_r0165;
_OUT._color = vec4(_r0167.x, _r0167.y, _r0167.z, 1.00000000E+00);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,391 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0006;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec3 _TMP9;
vec3 _TMP8;
vec3 _TMP7;
vec3 _TMP6;
vec3 _TMP5;
vec3 _TMP4;
vec3 _TMP17;
vec3 _TMP16;
vec3 _TMP15;
vec3 _TMP14;
vec3 _TMP13;
vec4 _TMP22;
float _TMP3;
float _TMP2;
float _TMP1;
float _TMP0;
vec3 _TMP12;
vec3 _TMP11;
float _TMP21;
float _TMP20;
float _TMP19;
vec3 _TMP10;
input_dummy _IN1;
uniform sampler2D Texture;
vec2 _x0028;
float _x0030;
vec3 _a0032;
vec3 _TMP33;
vec3 _x0046;
float _x0054;
vec3 _a0056;
vec3 _TMP57;
vec3 _x0070;
float _x0078;
vec3 _a0080;
vec3 _TMP81;
vec3 _x0094;
float _x0102;
vec3 _a0104;
vec3 _TMP105;
vec3 _x0118;
vec2 _c0138;
vec2 _c0142;
vec2 _c0146;
vec2 _c0150;
vec2 _c0154;
vec2 _c0158;
float _ypos0160;
vec2 _c0164;
vec2 _c0168;
vec2 _c0172;
vec2 _c0176;
vec2 _c0180;
vec2 _c0184;
float _ypos0186;
vec2 _c0190;
vec2 _c0194;
vec2 _c0198;
vec2 _c0202;
vec2 _c0206;
vec2 _c0210;
float _ypos0212;
vec2 _c0216;
vec2 _c0220;
vec2 _c0224;
vec2 _c0228;
vec2 _c0232;
vec2 _c0236;
float _ypos0238;
vec2 _c0242;
vec2 _c0246;
vec2 _c0250;
vec2 _c0254;
vec2 _c0258;
vec2 _c0262;
float _ypos0264;
vec2 _c0268;
vec2 _c0272;
vec2 _c0276;
vec2 _c0280;
vec2 _c0284;
vec2 _c0288;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _stepxy;
vec2 _pos;
vec2 _f;
vec3 _linetaps11;
vec3 _linetaps21;
vec3 _columntaps1;
vec3 _columntaps2;
float _suml;
float _sumc;
vec2 _xystart;
vec3 _xpos11;
vec3 _xpos21;
output_dummy _OUT;
vec3 _TMP26;
_stepxy = 1.00000000E+00/TextureSize.xy;
_pos = TEX0.xy + _stepxy*5.00000000E-01;
_x0028 = _pos/_stepxy;
_f = fract(_x0028);
_x0030 = 5.00000000E-01 - _f.x*5.00000000E-01;
_a0032 = 6.28318548E+00*vec3(_x0030 - 1.50000000E+00, _x0030 - 5.00000000E-01, _x0030 + 5.00000000E-01);
_TMP10 = abs(_a0032);
_TMP33 = max(_TMP10, vec3( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP19 = sin(_TMP33.x);
_TMP20 = sin(_TMP33.y);
_TMP21 = sin(_TMP33.z);
_TMP11 = vec3(_TMP19, _TMP20, _TMP21);
_x0046 = _TMP33/3.00000000E+00;
_TMP19 = sin(_x0046.x);
_TMP20 = sin(_x0046.y);
_TMP21 = sin(_x0046.z);
_TMP12 = vec3(_TMP19, _TMP20, _TMP21);
_linetaps11 = (_TMP11*_TMP12)/(_TMP33*_TMP33);
_x0054 = 1.00000000E+00 - _f.x*5.00000000E-01;
_a0056 = 6.28318548E+00*vec3(_x0054 - 1.50000000E+00, _x0054 - 5.00000000E-01, _x0054 + 5.00000000E-01);
_TMP10 = abs(_a0056);
_TMP57 = max(_TMP10, vec3( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP19 = sin(_TMP57.x);
_TMP20 = sin(_TMP57.y);
_TMP21 = sin(_TMP57.z);
_TMP11 = vec3(_TMP19, _TMP20, _TMP21);
_x0070 = _TMP57/3.00000000E+00;
_TMP19 = sin(_x0070.x);
_TMP20 = sin(_x0070.y);
_TMP21 = sin(_x0070.z);
_TMP12 = vec3(_TMP19, _TMP20, _TMP21);
_linetaps21 = (_TMP11*_TMP12)/(_TMP57*_TMP57);
_x0078 = 5.00000000E-01 - _f.y*5.00000000E-01;
_a0080 = 6.28318548E+00*vec3(_x0078 - 1.50000000E+00, _x0078 - 5.00000000E-01, _x0078 + 5.00000000E-01);
_TMP10 = abs(_a0080);
_TMP81 = max(_TMP10, vec3( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP19 = sin(_TMP81.x);
_TMP20 = sin(_TMP81.y);
_TMP21 = sin(_TMP81.z);
_TMP11 = vec3(_TMP19, _TMP20, _TMP21);
_x0094 = _TMP81/3.00000000E+00;
_TMP19 = sin(_x0094.x);
_TMP20 = sin(_x0094.y);
_TMP21 = sin(_x0094.z);
_TMP12 = vec3(_TMP19, _TMP20, _TMP21);
_columntaps1 = (_TMP11*_TMP12)/(_TMP81*_TMP81);
_x0102 = 1.00000000E+00 - _f.y*5.00000000E-01;
_a0104 = 6.28318548E+00*vec3(_x0102 - 1.50000000E+00, _x0102 - 5.00000000E-01, _x0102 + 5.00000000E-01);
_TMP10 = abs(_a0104);
_TMP105 = max(_TMP10, vec3( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));
_TMP19 = sin(_TMP105.x);
_TMP20 = sin(_TMP105.y);
_TMP21 = sin(_TMP105.z);
_TMP11 = vec3(_TMP19, _TMP20, _TMP21);
_x0118 = _TMP105/3.00000000E+00;
_TMP19 = sin(_x0118.x);
_TMP20 = sin(_x0118.y);
_TMP21 = sin(_x0118.z);
_TMP12 = vec3(_TMP19, _TMP20, _TMP21);
_columntaps2 = (_TMP11*_TMP12)/(_TMP105*_TMP105);
_TMP0 = dot(_linetaps11, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP1 = dot(_linetaps21, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_suml = _TMP0 + _TMP1;
_TMP2 = dot(_columntaps1, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_TMP3 = dot(_columntaps2, vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
_sumc = _TMP2 + _TMP3;
_linetaps11 = _linetaps11/_suml;
_linetaps21 = _linetaps21/_suml;
_columntaps1 = _columntaps1/_sumc;
_columntaps2 = _columntaps2/_sumc;
_xystart = (-2.50000000E+00 - _f)*_stepxy + _pos;
_xpos11 = vec3(_xystart.x, _xystart.x + _stepxy.x, _xystart.x + _stepxy.x*2.00000000E+00);
_xpos21 = vec3(_xystart.x + _stepxy.x*3.00000000E+00, _xystart.x + _stepxy.x*4.00000000E+00, _xystart.x + _stepxy.x*5.00000000E+00);
_c0138 = vec2(_xpos11.x, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0138);
_TMP13 = _TMP22.xyz;
_c0142 = vec2(_xpos11.y, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0142);
_TMP14 = _TMP22.xyz;
_c0146 = vec2(_xpos11.z, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0146);
_TMP15 = _TMP22.xyz;
_c0150 = vec2(_xpos21.x, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0150);
_TMP16 = _TMP22.xyz;
_c0154 = vec2(_xpos21.y, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0154);
_TMP17 = _TMP22.xyz;
_c0158 = vec2(_xpos21.z, _xystart.y);
_TMP22 = COMPAT_TEXTURE(Texture, _c0158);
_TMP4 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_ypos0160 = _xystart.y + _stepxy.y;
_c0164 = vec2(_xpos11.x, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0164);
_TMP13 = _TMP22.xyz;
_c0168 = vec2(_xpos11.y, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0168);
_TMP14 = _TMP22.xyz;
_c0172 = vec2(_xpos11.z, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0172);
_TMP15 = _TMP22.xyz;
_c0176 = vec2(_xpos21.x, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0176);
_TMP16 = _TMP22.xyz;
_c0180 = vec2(_xpos21.y, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0180);
_TMP17 = _TMP22.xyz;
_c0184 = vec2(_xpos21.z, _ypos0160);
_TMP22 = COMPAT_TEXTURE(Texture, _c0184);
_TMP5 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_ypos0186 = _xystart.y + _stepxy.y*2.00000000E+00;
_c0190 = vec2(_xpos11.x, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0190);
_TMP13 = _TMP22.xyz;
_c0194 = vec2(_xpos11.y, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0194);
_TMP14 = _TMP22.xyz;
_c0198 = vec2(_xpos11.z, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0198);
_TMP15 = _TMP22.xyz;
_c0202 = vec2(_xpos21.x, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0202);
_TMP16 = _TMP22.xyz;
_c0206 = vec2(_xpos21.y, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0206);
_TMP17 = _TMP22.xyz;
_c0210 = vec2(_xpos21.z, _ypos0186);
_TMP22 = COMPAT_TEXTURE(Texture, _c0210);
_TMP6 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_ypos0212 = _xystart.y + _stepxy.y*3.00000000E+00;
_c0216 = vec2(_xpos11.x, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0216);
_TMP13 = _TMP22.xyz;
_c0220 = vec2(_xpos11.y, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0220);
_TMP14 = _TMP22.xyz;
_c0224 = vec2(_xpos11.z, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0224);
_TMP15 = _TMP22.xyz;
_c0228 = vec2(_xpos21.x, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0228);
_TMP16 = _TMP22.xyz;
_c0232 = vec2(_xpos21.y, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0232);
_TMP17 = _TMP22.xyz;
_c0236 = vec2(_xpos21.z, _ypos0212);
_TMP22 = COMPAT_TEXTURE(Texture, _c0236);
_TMP7 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_ypos0238 = _xystart.y + _stepxy.y*4.00000000E+00;
_c0242 = vec2(_xpos11.x, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0242);
_TMP13 = _TMP22.xyz;
_c0246 = vec2(_xpos11.y, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0246);
_TMP14 = _TMP22.xyz;
_c0250 = vec2(_xpos11.z, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0250);
_TMP15 = _TMP22.xyz;
_c0254 = vec2(_xpos21.x, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0254);
_TMP16 = _TMP22.xyz;
_c0258 = vec2(_xpos21.y, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0258);
_TMP17 = _TMP22.xyz;
_c0262 = vec2(_xpos21.z, _ypos0238);
_TMP22 = COMPAT_TEXTURE(Texture, _c0262);
_TMP8 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_ypos0264 = _xystart.y + _stepxy.y*5.00000000E+00;
_c0268 = vec2(_xpos11.x, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0268);
_TMP13 = _TMP22.xyz;
_c0272 = vec2(_xpos11.y, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0272);
_TMP14 = _TMP22.xyz;
_c0276 = vec2(_xpos11.z, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0276);
_TMP15 = _TMP22.xyz;
_c0280 = vec2(_xpos21.x, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0280);
_TMP16 = _TMP22.xyz;
_c0284 = vec2(_xpos21.y, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0284);
_TMP17 = _TMP22.xyz;
_c0288 = vec2(_xpos21.z, _ypos0264);
_TMP22 = COMPAT_TEXTURE(Texture, _c0288);
_TMP9 = _TMP13*_linetaps11.x + _TMP14*_linetaps21.x + _TMP15*_linetaps11.y + _TMP16*_linetaps21.y + _TMP17*_linetaps11.z + _TMP22.xyz*_linetaps21.z;
_TMP26 = _TMP4*_columntaps1.x + _TMP5*_columntaps2.x + _TMP6*_columntaps1.y + _TMP7*_columntaps2.y + _TMP8*_columntaps1.z + _TMP9*_columntaps2.z;
_OUT._color = vec4(_TMP26.x, _TMP26.y, _TMP26.z, 1.00000000E+00);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,208 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _col;
COMPAT_VARYING vec2 VARprev6;
COMPAT_VARYING vec2 VARprev5;
COMPAT_VARYING vec2 VARprev4;
COMPAT_VARYING vec2 VARprev3;
COMPAT_VARYING vec2 VARprev2;
COMPAT_VARYING vec2 VARprev1;
COMPAT_VARYING vec2 VARprev;
COMPAT_VARYING vec2 VARtex;
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 _tex_coord;
struct previous {
float _placeholder59;
vec2 _tex_coord;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
float _placeholder70;
};
struct tex_coords {
vec2 VARtex;
vec2 VARprev;
vec2 VARprev1;
vec2 VARprev2;
vec2 VARprev3;
vec2 VARprev4;
vec2 VARprev5;
vec2 VARprev6;
};
struct output_dummy {
vec4 _col;
};
vec4 _oPosition1;
tex_coords _coords1;
previous _PREV7;
previous _PREV11;
previous _PREV21;
previous _PREV31;
previous _PREV41;
previous _PREV51;
previous _PREV61;
vec4 _r0013;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
COMPAT_ATTRIBUTE vec2 Prev6TexCoord;
COMPAT_ATTRIBUTE vec2 Prev5TexCoord;
COMPAT_ATTRIBUTE vec2 Prev4TexCoord;
COMPAT_ATTRIBUTE vec2 Prev3TexCoord;
COMPAT_ATTRIBUTE vec2 Prev2TexCoord;
COMPAT_ATTRIBUTE vec2 Prev1TexCoord;
COMPAT_ATTRIBUTE vec2 PrevTexCoord;
void main()
{
_r0013 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0013 = _r0013 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0013 = _r0013 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0013 = _r0013 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0013;
VARtex = gl_MultiTexCoord0.xy;
VARprev = PrevTexCoord;
VARprev1 = Prev1TexCoord;
VARprev2 = Prev2TexCoord;
VARprev3 = Prev3TexCoord;
VARprev4 = Prev4TexCoord;
VARprev5 = Prev5TexCoord;
VARprev6 = Prev6TexCoord;
gl_Position = _r0013;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _col;
COMPAT_VARYING vec2 VARprev6;
COMPAT_VARYING vec2 VARprev5;
COMPAT_VARYING vec2 VARprev4;
COMPAT_VARYING vec2 VARprev3;
COMPAT_VARYING vec2 VARprev2;
COMPAT_VARYING vec2 VARprev1;
COMPAT_VARYING vec2 VARprev;
COMPAT_VARYING vec2 VARtex;
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec2 VARtex_coord;
struct previous {
float _placeholder63;
vec2 VARtex_coord;
};
struct input_dummy {
vec2 _video_size;
vec2 VARtexture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
float _placeholder74;
};
struct tex_coords {
vec2 VARtex;
vec2 VARprev;
vec2 VARprev1;
vec2 VARprev2;
vec2 VARprev3;
vec2 VARprev4;
vec2 VARprev5;
vec2 VARprev6;
};
struct output_dummy {
vec4 _col;
};
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
tex_coords _coords1;
input_dummy _IN1;
previous _PREV7;
previous _PREV11;
previous _PREV21;
previous _PREV31;
previous _PREV41;
previous _PREV51;
previous _PREV61;
uniform sampler2D Texture;
uniform sampler2D Prev6Texture;
uniform sampler2D Prev5Texture;
uniform sampler2D Prev4Texture;
uniform sampler2D Prev3Texture;
uniform sampler2D Prev2Texture;
uniform sampler2D Prev1Texture;
uniform sampler2D PrevTexture;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _color;
_color = COMPAT_TEXTURE(Prev6Texture, VARprev6);
_TMP0 = COMPAT_TEXTURE(Prev5Texture, VARprev5);
_color = (_color + _TMP0)/2.00000000E+00;
_TMP1 = COMPAT_TEXTURE(Prev4Texture, VARprev4);
_color = (_color + _TMP1)/2.00000000E+00;
_TMP2 = COMPAT_TEXTURE(Prev3Texture, VARprev3);
_color = (_color + _TMP2)/2.00000000E+00;
_TMP3 = COMPAT_TEXTURE(Prev2Texture, VARprev2);
_color = (_color + _TMP3)/2.00000000E+00;
_TMP4 = COMPAT_TEXTURE(Prev1Texture, VARprev1);
_color = (_color + _TMP4)/2.00000000E+00;
_TMP5 = COMPAT_TEXTURE(PrevTexture, VARprev);
_color = (_color + _TMP5)/2.00000000E+00;
_TMP6 = COMPAT_TEXTURE(Texture, VARtex);
_color = (_color + _TMP6)/2.00000000E+00;
FragColor = _color;
return;
}
#endif

169
tools/shaders/oldtv.cg.glsl Normal file
View file

@ -0,0 +1,169 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _color;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _vpos1;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct VERTEX_OUTPUT {
vec4 _position1;
vec4 _vpos1;
vec2 _texCoord1;
};
struct output_dummy {
vec4 _color;
};
VERTEX_OUTPUT _ret_0;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ret_0._position1 = _r0006;
_ret_0._vpos1 = _r0006;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
gl_Position = _r0006;
TEX1 = _r0006;
TEX0.xy = gl_MultiTexCoord0.xy;
return;
TEX1 = _ret_0._vpos1;
TEX0.xy = _ret_0._texCoord1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _color;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _vpos;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct VERTEX_OUTPUT {
vec4 _vpos;
vec2 _texCoord;
};
struct output_dummy {
vec4 _color;
};
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
float _TMP4;
float _TMP1;
float _TMP3;
float _TMP2;
float _TMP0;
VERTEX_OUTPUT _TMP8;
uniform sampler2D Texture;
input_dummy _IN1;
float _TMP13;
float _x0014;
float _frame_cnt0020;
vec2 _constant10020;
float _constant20020;
float _x0028;
float _TMP29;
float _x0030;
vec2 _c0038;
vec2 _c0042;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
output_dummy _OUT;
float _f;
vec4 _distortion2;
_TMP8._vpos = TEX1/TEX1.w;
_f = (1.00000000E+00 - _TMP8._vpos.x*_TMP8._vpos.x)*(1.00000000E+00 - _TMP8._vpos.y*_TMP8._vpos.y);
_TMP0 = pow(_f, 4.39999998E-01);
_x0014 = 8.00000012E-01*(_TMP0 - 1.59999996E-01);
_TMP1 = min(1.00000000E+00, _x0014);
_TMP13 = max(0.00000000E+00, _TMP1);
_frame_cnt0020 = cos(float(FrameCount));
_constant10020 = _frame_cnt0020*vec2( 1.29090910E+01, 7.82307663E+01);
_constant20020 = (_frame_cnt0020*4.81344000E+05)/1.10000000E+01;
_TMP2 = dot(TEX0.xy, _constant10020);
_TMP3 = sin(_TMP2);
_x0028 = _TMP3*_constant20020;
_TMP4 = fract(_x0028);
_x0030 = _TMP4 + 2.00000003E-01;
_TMP1 = min(1.00000000E+00, _x0030);
_TMP29 = max(0.00000000E+00, _TMP1);
_c0038 = TEX0.xy + 1.95312500E-03;
_TMP5 = COMPAT_TEXTURE(Texture, _c0038);
_TMP6 = COMPAT_TEXTURE(Texture, TEX0.xy);
_c0042 = TEX0.xy - 1.95312500E-03;
_TMP7 = COMPAT_TEXTURE(Texture, _c0042);
_distortion2 = vec4(_TMP5.x, _TMP6.y, _TMP7.z, 1.00000000E+00);
_OUT._color = _TMP13*(_distortion2*_TMP29);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,489 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 VARxyp_21_22_23;
COMPAT_VARYING vec4 VARxyp_16_17_18;
COMPAT_VARYING vec4 VARxyp_11_12_13;
COMPAT_VARYING vec4 VARxyp_9_14_9;
COMPAT_VARYING vec4 VARxyp_6_7_8;
COMPAT_VARYING vec4 VARxyp_5_10_15;
COMPAT_VARYING vec4 VARxyp_1_2_3;
COMPAT_VARYING vec2 _tc;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _pos;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _pos;
vec4 _color1;
vec2 _tc;
vec4 VARxyp_1_2_3;
vec4 VARxyp_5_10_15;
vec4 VARxyp_6_7_8;
vec4 VARxyp_9_14_9;
vec4 VARxyp_11_12_13;
vec4 VARxyp_16_17_18;
vec4 VARxyp_21_22_23;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
float _x;
float _y;
vec2 _texCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_x = 1.00000000E+00/TextureSize.x;
_y = 1.00000000E+00/TextureSize.y;
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT.VARxyp_1_2_3 = _texCoord.xxxy + vec4(-_x, 0.00000000E+00, _x, -2.00000000E+00*_y);
_OUT.VARxyp_6_7_8 = _texCoord.xxxy + vec4(-_x, 0.00000000E+00, _x, -_y);
_OUT.VARxyp_11_12_13 = _texCoord.xxxy + vec4(-_x, 0.00000000E+00, _x, 0.00000000E+00);
_OUT.VARxyp_16_17_18 = _texCoord.xxxy + vec4(-_x, 0.00000000E+00, _x, _y);
_OUT.VARxyp_21_22_23 = _texCoord.xxxy + vec4(-_x, 0.00000000E+00, _x, 2.00000000E+00*_y);
_OUT.VARxyp_5_10_15 = _texCoord.xyyy + vec4(-2.00000000E+00*_x, -_y, 0.00000000E+00, _y);
_OUT.VARxyp_9_14_9 = _texCoord.xyyy + vec4(2.00000000E+00*_x, -_y, 0.00000000E+00, _y);
_ret_0._pos = _r0006;
_ret_0._color1 = _OUT._color1;
_ret_0._tc = _texCoord;
VARxyp_1_2_3 = _OUT.VARxyp_1_2_3;
VARxyp_5_10_15 = _OUT.VARxyp_5_10_15;
VARxyp_6_7_8 = _OUT.VARxyp_6_7_8;
VARxyp_9_14_9 = _OUT.VARxyp_9_14_9;
VARxyp_11_12_13 = _OUT.VARxyp_11_12_13;
VARxyp_16_17_18 = _OUT.VARxyp_16_17_18;
VARxyp_21_22_23 = _OUT.VARxyp_21_22_23;
gl_Position = _r0006;
COL0 = _OUT._color1;
TEX0.xy = _texCoord;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._tc;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 VARxyp_21_22_23;
COMPAT_VARYING vec4 VARxyp_16_17_18;
COMPAT_VARYING vec4 VARxyp_11_12_13;
COMPAT_VARYING vec4 VARxyp_9_14_9;
COMPAT_VARYING vec4 VARxyp_6_7_8;
COMPAT_VARYING vec4 VARxyp_5_10_15;
COMPAT_VARYING vec4 VARxyp_1_2_3;
COMPAT_VARYING vec2 _tc;
COMPAT_VARYING vec4 _color;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _color;
vec2 _tc;
vec4 VARxyp_1_2_3;
vec4 VARxyp_5_10_15;
vec4 VARxyp_6_7_8;
vec4 VARxyp_9_14_9;
vec4 VARxyp_11_12_13;
vec4 VARxyp_16_17_18;
vec4 VARxyp_21_22_23;
};
vec4 _ret_0;
vec3 _TMP46;
float _TMP45;
float _TMP44;
float _TMP43;
vec3 _TMP42;
vec3 _TMP41;
vec3 _TMP40;
vec3 _TMP39;
vec3 _TMP38;
vec3 _TMP37;
vec3 _TMP36;
vec3 _TMP35;
vec4 _TMP34;
bvec4 _TMP31;
bvec4 _TMP30;
bvec4 _TMP29;
bvec4 _TMP28;
bvec4 _TMP27;
bvec4 _TMP26;
bvec4 _TMP25;
bvec4 _TMP24;
bvec4 _TMP23;
bvec4 _TMP22;
bvec4 _TMP21;
vec4 _TMP57;
float _TMP50;
float _TMP49;
float _TMP48;
float _TMP47;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
out_vertex _VAR1;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0165;
vec4 _x0167;
vec4 _x0169;
vec4 _TMP170;
vec4 _x0177;
vec4 _x0179;
vec4 _TMP180;
vec4 _x0187;
vec4 _x0189;
vec4 _TMP190;
vec4 _x0197;
vec4 _x0199;
vec4 _TMP200;
vec4 _TMP208;
vec4 _a0211;
vec4 _TMP212;
vec4 _a0215;
vec4 _TMP216;
vec4 _a0219;
vec4 _TMP220;
vec4 _a0223;
vec4 _TMP224;
vec4 _a0227;
vec4 _TMP230;
vec4 _a0233;
vec4 _TMP234;
vec4 _a0237;
vec4 _TMP238;
vec4 _a0241;
vec4 _TMP242;
vec4 _a0245;
vec4 _TMP246;
vec4 _a0249;
vec4 _TMP250;
vec4 _a0253;
vec4 _TMP254;
vec4 _a0257;
vec4 _TMP260;
vec4 _a0263;
vec4 _TMP266;
vec4 _a0269;
vec4 _TMP272;
vec4 _a0275;
vec4 _TMP278;
vec4 _a0281;
vec4 _TMP284;
vec4 _a0287;
vec4 _TMP290;
vec4 _a0293;
vec4 _TMP296;
vec4 _a0299;
vec4 _TMP302;
vec4 _a0305;
vec4 _TMP308;
vec4 _a0311;
vec4 _TMP314;
vec4 _a0317;
vec4 _TMP320;
vec4 _a0323;
vec4 _TMP324;
vec4 _a0327;
vec4 _TMP328;
vec4 _a0331;
vec3 _df0369;
vec3 _a0371;
vec3 _df0373;
vec3 _a0375;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _p7;
vec4 _p8;
vec4 _p12;
vec4 _p14;
vec4 _p19;
vec4 _p23;
vec2 _fp;
vec4 _ma45;
vec4 _ma30;
vec4 _ma60;
vec4 _marn;
vec4 _e45;
vec4 _econt;
bvec4 _r45;
bvec4 _r30;
bvec4 _r60;
bvec4 _edr45;
bvec4 _edrrn;
bvec4 _edr30;
bvec4 _edr60;
vec4 _final45;
vec4 _final30;
vec4 _final60;
vec4 _final36;
vec4 _finalrn;
vec4 _px;
vec4 _mac;
vec3 _res1;
vec3 _res2;
_TMP0 = COMPAT_TEXTURE(Texture, VARxyp_1_2_3.xw);
_TMP1 = COMPAT_TEXTURE(Texture, VARxyp_1_2_3.yw);
_TMP2 = COMPAT_TEXTURE(Texture, VARxyp_1_2_3.zw);
_TMP3 = COMPAT_TEXTURE(Texture, VARxyp_6_7_8.xw);
_TMP4 = COMPAT_TEXTURE(Texture, VARxyp_6_7_8.yw);
_TMP5 = COMPAT_TEXTURE(Texture, VARxyp_6_7_8.zw);
_TMP6 = COMPAT_TEXTURE(Texture, VARxyp_11_12_13.xw);
_TMP7 = COMPAT_TEXTURE(Texture, VARxyp_11_12_13.yw);
_TMP8 = COMPAT_TEXTURE(Texture, VARxyp_11_12_13.zw);
_TMP9 = COMPAT_TEXTURE(Texture, VARxyp_16_17_18.xw);
_TMP10 = COMPAT_TEXTURE(Texture, VARxyp_16_17_18.yw);
_TMP11 = COMPAT_TEXTURE(Texture, VARxyp_16_17_18.zw);
_TMP12 = COMPAT_TEXTURE(Texture, VARxyp_21_22_23.xw);
_TMP13 = COMPAT_TEXTURE(Texture, VARxyp_21_22_23.yw);
_TMP14 = COMPAT_TEXTURE(Texture, VARxyp_21_22_23.zw);
_TMP15 = COMPAT_TEXTURE(Texture, VARxyp_5_10_15.xy);
_TMP16 = COMPAT_TEXTURE(Texture, VARxyp_5_10_15.xz);
_TMP17 = COMPAT_TEXTURE(Texture, VARxyp_5_10_15.xw);
_TMP18 = COMPAT_TEXTURE(Texture, VARxyp_9_14_9.xy);
_TMP19 = COMPAT_TEXTURE(Texture, VARxyp_9_14_9.xz);
_TMP20 = COMPAT_TEXTURE(Texture, VARxyp_9_14_9.xw);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP4.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP6.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP10.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP8.xyz);
_p7 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP5.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP3.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP9.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP11.xyz);
_p8 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP7.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP7.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP7.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP7.xyz);
_p12 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP19.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP1.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP16.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP13.xyz);
_p14 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP20.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP2.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP15.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP12.xyz);
_p19 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_TMP47 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP14.xyz);
_TMP48 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP18.xyz);
_TMP49 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP0.xyz);
_TMP50 = dot(vec3( 2.09999993E-01, 7.20000029E-01, 7.00000003E-02), _TMP17.xyz);
_p23 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
_x0165 = TEX0.xy*TextureSize;
_fp = fract(_x0165);
_x0167 = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x;
_x0169 = (_x0167 - vec4( 1.10000002E+00, 9.99999940E-02, -8.99999976E-01, 9.99999940E-02))/vec4( 7.99999952E-01, 7.99999952E-01, 7.99999952E-01, 7.99999952E-01);
_TMP57 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0169);
_TMP170 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP57);
_ma45 = _TMP170*_TMP170*(3.00000000E+00 - 2.00000000E+00*_TMP170);
_x0177 = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x;
_x0179 = (_x0177 - vec4( 8.00000012E-01, 6.00000024E-01, -6.99999988E-01, -4.00000006E-01))/vec4( 4.00000036E-01, 7.99999952E-01, 3.99999976E-01, 8.00000012E-01);
_TMP57 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0179);
_TMP180 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP57);
_ma30 = _TMP180*_TMP180*(3.00000000E+00 - 2.00000000E+00*_TMP180);
_x0187 = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x;
_x0189 = (_x0187 - vec4( 1.60000002E+00, -2.00000003E-01, -1.39999998E+00, 3.00000012E-01))/vec4( 8.00000072E-01, 4.00000006E-01, 7.99999952E-01, 3.99999976E-01);
_TMP57 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0189);
_TMP190 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP57);
_ma60 = _TMP190*_TMP190*(3.00000000E+00 - 2.00000000E+00*_TMP190);
_x0197 = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x;
_x0199 = (_x0197 - vec4( 1.30000007E+00, 3.00000012E-01, -6.99999988E-01, 3.00000012E-01))/vec4( 7.99999833E-01, 8.00000012E-01, 8.00000012E-01, 8.00000012E-01);
_TMP57 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0199);
_TMP200 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP57);
_marn = _TMP200*_TMP200*(3.00000000E+00 - 2.00000000E+00*_TMP200);
_a0211 = _p12 - _p8;
_TMP208 = abs(_a0211);
_a0215 = _p12 - _p8.zwxy;
_TMP212 = abs(_a0215);
_a0219 = _p8.wxyz - _p14.wxyz;
_TMP216 = abs(_a0219);
_a0223 = _p8.wxyz - _p14;
_TMP220 = abs(_a0223);
_a0227 = _p7.zwxy - _p7.wxyz;
_TMP224 = abs(_a0227);
_e45 = _TMP208 + _TMP212 + _TMP216 + _TMP220 + 4.00000000E+00*_TMP224;
_a0233 = _p7.zwxy - _p7.yzwx;
_TMP230 = abs(_a0233);
_a0237 = _p7.zwxy - _p23;
_TMP234 = abs(_a0237);
_a0241 = _p7.wxyz - _p7;
_TMP238 = abs(_a0241);
_a0245 = _p7.wxyz - _p19;
_TMP242 = abs(_a0245);
_a0249 = _p12 - _p8.wxyz;
_TMP246 = abs(_a0249);
_econt = _TMP230 + _TMP234 + _TMP238 + _TMP242 + 4.00000000E+00*_TMP246;
_a0253 = _p7.wxyz - _p8.zwxy;
_TMP250 = abs(_a0253);
_a0257 = _p8 - _p7.zwxy;
_TMP254 = abs(_a0257);
_a0263 = _p7.wxyz - _p7;
_TMP260 = abs(_a0263);
_TMP21 = bvec4(_TMP260.x < 3.19999993E-01, _TMP260.y < 3.19999993E-01, _TMP260.z < 3.19999993E-01, _TMP260.w < 3.19999993E-01);
_a0269 = _p7.wxyz - _p8;
_TMP266 = abs(_a0269);
_TMP22 = bvec4(_TMP266.x < 3.19999993E-01, _TMP266.y < 3.19999993E-01, _TMP266.z < 3.19999993E-01, _TMP266.w < 3.19999993E-01);
_a0275 = _p7.zwxy - _p7.yzwx;
_TMP272 = abs(_a0275);
_TMP23 = bvec4(_TMP272.x < 3.19999993E-01, _TMP272.y < 3.19999993E-01, _TMP272.z < 3.19999993E-01, _TMP272.w < 3.19999993E-01);
_a0281 = _p7.zwxy - _p8.zwxy;
_TMP278 = abs(_a0281);
_TMP24 = bvec4(_TMP278.x < 3.19999993E-01, _TMP278.y < 3.19999993E-01, _TMP278.z < 3.19999993E-01, _TMP278.w < 3.19999993E-01);
_a0287 = _p12 - _p8.wxyz;
_TMP284 = abs(_a0287);
_TMP25 = bvec4(_TMP284.x < 3.19999993E-01, _TMP284.y < 3.19999993E-01, _TMP284.z < 3.19999993E-01, _TMP284.w < 3.19999993E-01);
_a0293 = _p7.wxyz - _p14;
_TMP290 = abs(_a0293);
_TMP26 = bvec4(_TMP290.x < 3.19999993E-01, _TMP290.y < 3.19999993E-01, _TMP290.z < 3.19999993E-01, _TMP290.w < 3.19999993E-01);
_a0299 = _p7.wxyz - _p19;
_TMP296 = abs(_a0299);
_TMP27 = bvec4(_TMP296.x < 3.19999993E-01, _TMP296.y < 3.19999993E-01, _TMP296.z < 3.19999993E-01, _TMP296.w < 3.19999993E-01);
_a0305 = _p7.zwxy - _p14.wxyz;
_TMP302 = abs(_a0305);
_TMP28 = bvec4(_TMP302.x < 3.19999993E-01, _TMP302.y < 3.19999993E-01, _TMP302.z < 3.19999993E-01, _TMP302.w < 3.19999993E-01);
_a0311 = _p7.zwxy - _p23;
_TMP308 = abs(_a0311);
_TMP29 = bvec4(_TMP308.x < 3.19999993E-01, _TMP308.y < 3.19999993E-01, _TMP308.z < 3.19999993E-01, _TMP308.w < 3.19999993E-01);
_a0317 = _p12 - _p8.zwxy;
_TMP314 = abs(_a0317);
_TMP30 = bvec4(_TMP314.x < 3.19999993E-01, _TMP314.y < 3.19999993E-01, _TMP314.z < 3.19999993E-01, _TMP314.w < 3.19999993E-01);
_a0323 = _p12 - _p8;
_TMP320 = abs(_a0323);
_TMP31 = bvec4(_TMP320.x < 3.19999993E-01, _TMP320.y < 3.19999993E-01, _TMP320.z < 3.19999993E-01, _TMP320.w < 3.19999993E-01);
_r45 = bvec4(_p12.x != _p7.w && _p12.x != _p7.z && (!_TMP21.x && !_TMP22.x || !_TMP23.x && !_TMP24.x || _TMP25.x && (!_TMP26.x && !_TMP27.x || !_TMP28.x && !_TMP29.x) || _TMP30.x || _TMP31.x), _p12.y != _p7.x && _p12.y != _p7.w && (!_TMP21.y && !_TMP22.y || !_TMP23.y && !_TMP24.y || _TMP25.y && (!_TMP26.y && !_TMP27.y || !_TMP28.y && !_TMP29.y) || _TMP30.y || _TMP31.y), _p12.z != _p7.y && _p12.z != _p7.x && (!_TMP21.z && !_TMP22.z || !_TMP23.z && !_TMP24.z || _TMP25.z && (!_TMP26.z && !_TMP27.z || !_TMP28.z && !_TMP29.z) || _TMP30.z || _TMP31.z), _p12.w != _p7.z && _p12.w != _p7.y && (!_TMP21.w && !_TMP22.w || !_TMP23.w && !_TMP24.w || _TMP25.w && (!_TMP26.w && !_TMP27.w || !_TMP28.w && !_TMP29.w) || _TMP30.w || _TMP31.w));
_r30 = bvec4(_p12.x != _p8.z && _p7.y != _p8.z, _p12.y != _p8.w && _p7.z != _p8.w, _p12.z != _p8.x && _p7.w != _p8.x, _p12.w != _p8.y && _p7.x != _p8.y);
_r60 = bvec4(_p12.x != _p8.x && _p7.x != _p8.x, _p12.y != _p8.y && _p7.y != _p8.y, _p12.z != _p8.z && _p7.z != _p8.z, _p12.w != _p8.w && _p7.w != _p8.w);
_edr45 = bvec4(_e45.x < _econt.x && _r45.x, _e45.y < _econt.y && _r45.y, _e45.z < _econt.z && _r45.z, _e45.w < _econt.w && _r45.w);
_edrrn = bvec4(_e45.x <= _econt.x, _e45.y <= _econt.y, _e45.z <= _econt.z, _e45.w <= _econt.w);
_edr30 = bvec4((_TMP250*2.00000000E+00).x <= _TMP254.x && _r30.x, (_TMP250*2.00000000E+00).y <= _TMP254.y && _r30.y, (_TMP250*2.00000000E+00).z <= _TMP254.z && _r30.z, (_TMP250*2.00000000E+00).w <= _TMP254.w && _r30.w);
_edr60 = bvec4((_TMP254*2.00000000E+00).x <= _TMP250.x && _r60.x, (_TMP254*2.00000000E+00).y <= _TMP250.y && _r60.y, (_TMP254*2.00000000E+00).z <= _TMP250.z && _r60.z, (_TMP254*2.00000000E+00).w <= _TMP250.w && _r60.w);
_final45 = vec4(float((!_edr30.x && !_edr60.x && _edr45.x)), float((!_edr30.y && !_edr60.y && _edr45.y)), float((!_edr30.z && !_edr60.z && _edr45.z)), float((!_edr30.w && !_edr60.w && _edr45.w)));
_final30 = vec4(float((_edr45.x && _edr30.x && !_edr60.x)), float((_edr45.y && _edr30.y && !_edr60.y)), float((_edr45.z && _edr30.z && !_edr60.z)), float((_edr45.w && _edr30.w && !_edr60.w)));
_final60 = vec4(float((_edr45.x && _edr60.x && !_edr30.x)), float((_edr45.y && _edr60.y && !_edr30.y)), float((_edr45.z && _edr60.z && !_edr30.z)), float((_edr45.w && _edr60.w && !_edr30.w)));
_final36 = vec4(float((_edr45.x && _edr30.x && _edr60.x)), float((_edr45.y && _edr30.y && _edr60.y)), float((_edr45.z && _edr30.z && _edr60.z)), float((_edr45.w && _edr30.w && _edr60.w)));
_finalrn = vec4(float((!_edr45.x && _edrrn.x)), float((!_edr45.y && _edrrn.y)), float((!_edr45.z && _edrrn.z)), float((!_edr45.w && _edrrn.w)));
_a0327 = _p12 - _p7.zwxy;
_TMP324 = abs(_a0327);
_a0331 = _p12 - _p7.wxyz;
_TMP328 = abs(_a0331);
_px = vec4(float((_TMP328.x >= _TMP324.x)), float((_TMP328.y >= _TMP324.y)), float((_TMP328.z >= _TMP324.z)), float((_TMP328.w >= _TMP324.w)));
_TMP34 = max(_ma30, _ma60);
_mac = _final36*_TMP34 + _final30*_ma30 + _final60*_ma60 + _final45*_ma45 + _finalrn*_marn;
_TMP35 = _TMP8.xyz + _px.x*(_TMP10.xyz - _TMP8.xyz);
_res1 = _TMP7.xyz + _mac.x*(_TMP35 - _TMP7.xyz);
_TMP36 = _TMP4.xyz + _px.y*(_TMP8.xyz - _TMP4.xyz);
_res1 = _res1 + _mac.y*(_TMP36 - _res1);
_TMP37 = _TMP6.xyz + _px.z*(_TMP4.xyz - _TMP6.xyz);
_res1 = _res1 + _mac.z*(_TMP37 - _res1);
_TMP38 = _TMP10.xyz + _px.w*(_TMP6.xyz - _TMP10.xyz);
_res1 = _res1 + _mac.w*(_TMP38 - _res1);
_TMP39 = _TMP10.xyz + _px.w*(_TMP6.xyz - _TMP10.xyz);
_res2 = _TMP7.xyz + _mac.w*(_TMP39 - _TMP7.xyz);
_TMP40 = _TMP6.xyz + _px.z*(_TMP4.xyz - _TMP6.xyz);
_res2 = _res2 + _mac.z*(_TMP40 - _res2);
_TMP41 = _TMP4.xyz + _px.y*(_TMP8.xyz - _TMP4.xyz);
_res2 = _res2 + _mac.y*(_TMP41 - _res2);
_TMP42 = _TMP8.xyz + _px.x*(_TMP10.xyz - _TMP8.xyz);
_res2 = _res2 + _mac.x*(_TMP42 - _res2);
_a0371 = _TMP7.xyz - _res1;
_df0369 = abs(_a0371);
_TMP43 = _df0369.x + _df0369.y + _df0369.z;
_a0375 = _TMP7.xyz - _res2;
_df0373 = abs(_a0375);
_TMP44 = _df0373.x + _df0373.y + _df0373.z;
_TMP45 = float((_TMP44 >= _TMP43));
_TMP46 = _res1 + _TMP45*(_res2 - _res1);
_ret_0 = vec4(_TMP46.x, _TMP46.y, _TMP46.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,108 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
vec4 _oPosition1;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _otexCoord;
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0005;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
vec4 _ret_0;
vec2 _TMP1;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _TMP8;
vec2 _c0015;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec2 _texel;
vec2 _texel_floored;
vec2 _s;
vec2 _center_dist;
vec2 _f;
vec2 _mod_texel;
_texel = TEX0.xy*TextureSize;
_texel_floored = floor(_texel);
_s = fract(_texel);
_center_dist = _s - 5.00000000E-01;
_TMP1 = min(vec2( 3.75000000E-01, 3.75000000E-01), _center_dist);
_TMP8 = max(vec2( -3.75000000E-01, -3.75000000E-01), _TMP1);
_f = (_center_dist - _TMP8)*4.00000000E+00 + 5.00000000E-01;
_mod_texel = _texel_floored + _f;
_c0015 = _mod_texel/TextureSize;
_ret_0 = COMPAT_TEXTURE(Texture, _c0015);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,298 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color1;
struct output_dummy {
vec4 _color1;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
vec4 _r0005;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _otexCoord;
_r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0005;
_oColor = COLOR;
_otexCoord = gl_MultiTexCoord0.xy;
gl_Position = _r0005;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 _color;
struct output_dummy {
vec4 _color;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
float _TMP19;
float _TMP18;
float _TMP17;
float _TMP16;
float _TMP24;
float _TMP23;
float _TMP22;
float _TMP21;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP20;
float _TMP28;
float _TMP27;
float _TMP26;
float _TMP25;
vec4 _TMP6;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP15;
vec4 _TMP1;
vec4 _TMP0;
float _TMP14;
float _TMP13;
float _TMP12;
float _TMP11;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _c0036;
vec2 _c0040;
vec2 _c0042;
vec2 _c0044;
vec2 _c0046;
vec2 _c0048;
vec2 _c0050;
vec2 _x0052;
vec4 _x0054;
vec4 _x0064;
vec4 _TMP73;
vec4 _x0074;
vec4 _TMP79;
vec4 _x0080;
vec4 _a0116;
vec4 _a0128;
vec4 _TMP137;
vec4 _x0138;
vec4 _a0160;
vec4 _a0172;
vec4 _TMP181;
vec4 _x0182;
float _a0194;
float _c0194;
float _a0196;
vec4 _a0202;
COMPAT_VARYING vec4 TEX0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
output_dummy _OUT;
vec2 _xy;
vec4 _texels[8];
vec2 _uv_ratio;
vec4 _col;
vec4 _col2;
vec4 _coeffs;
vec4 _wid;
vec4 _weights;
vec4 _weights2;
vec4 _mcol;
_xy = TEX0.xy + vec2(0.00000000E+00, -5.00000000E-01*(2.22991081E-03/OutputSize.y)*4.80480469E+02);
_c0036 = _xy + vec2( -7.68768738E+02, 0.00000000E+00);
_texels[0] = COMPAT_TEXTURE(Texture, _c0036);
_texels[1] = COMPAT_TEXTURE(Texture, _xy);
_c0040 = _xy + vec2( 7.68768738E+02, 0.00000000E+00);
_texels[2] = COMPAT_TEXTURE(Texture, _c0040);
_c0042 = _xy + vec2( 1.53753748E+03, 0.00000000E+00);
_texels[3] = COMPAT_TEXTURE(Texture, _c0042);
_c0044 = _xy + vec2( -7.68768738E+02, 4.80480469E+02);
_texels[4] = COMPAT_TEXTURE(Texture, _c0044);
_c0046 = _xy + vec2( 0.00000000E+00, 4.80480469E+02);
_texels[5] = COMPAT_TEXTURE(Texture, _c0046);
_c0048 = _xy + vec2( 7.68768738E+02, 4.80480469E+02);
_texels[6] = COMPAT_TEXTURE(Texture, _c0048);
_c0050 = _xy + vec2( 1.53753748E+03, 4.80480469E+02);
_texels[7] = COMPAT_TEXTURE(Texture, _c0050);
_x0052 = _xy*vec2( 1.30078127E-03, 2.08125007E-03);
_uv_ratio = fract(_x0052);
_coeffs = vec4(1.00000000E+00 + _uv_ratio.x, _uv_ratio.x, 1.00000000E+00 - _uv_ratio.x, 2.00000000E+00 - _uv_ratio.x);
_x0054 = 3.14159274E+00*_coeffs;
_TMP11 = sin(_x0054.x);
_TMP12 = sin(_x0054.y);
_TMP13 = sin(_x0054.z);
_TMP14 = sin(_x0054.w);
_TMP0 = vec4(_TMP11, _TMP12, _TMP13, _TMP14);
_x0064 = (3.14159274E+00*_coeffs)/2.00000000E+00;
_TMP11 = sin(_x0064.x);
_TMP12 = sin(_x0064.y);
_TMP13 = sin(_x0064.z);
_TMP14 = sin(_x0064.w);
_TMP1 = vec4(_TMP11, _TMP12, _TMP13, _TMP14);
_coeffs = (_TMP0*_TMP1)/(_coeffs*_coeffs);
_coeffs = _coeffs/(_coeffs.x + _coeffs.y + _coeffs.z + _coeffs.w);
_x0074 = _coeffs.x*_texels[0] + _coeffs.y*_texels[1] + _coeffs.z*_texels[2] + _coeffs.w*_texels[3];
_TMP15 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0074);
_TMP73 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP15);
_x0080 = _coeffs.x*_texels[4] + _coeffs.y*_texels[5] + _coeffs.z*_texels[6] + _coeffs.w*_texels[7];
_TMP15 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0080);
_TMP79 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP15);
_TMP16 = pow(_TMP73.x, 2.50000000E+00);
_TMP17 = pow(_TMP73.y, 2.50000000E+00);
_TMP18 = pow(_TMP73.z, 2.50000000E+00);
_TMP19 = pow(_TMP73.w, 2.50000000E+00);
_col = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_TMP16 = pow(_TMP79.x, 2.50000000E+00);
_TMP17 = pow(_TMP79.y, 2.50000000E+00);
_TMP18 = pow(_TMP79.z, 2.50000000E+00);
_TMP19 = pow(_TMP79.w, 2.50000000E+00);
_col2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_TMP16 = pow(_col.x, 4.00000000E+00);
_TMP17 = pow(_col.y, 4.00000000E+00);
_TMP18 = pow(_col.z, 4.00000000E+00);
_TMP19 = pow(_col.w, 4.00000000E+00);
_TMP2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_wid = 2.00000000E+00 + 2.00000000E+00*_TMP2;
_weights = vec4(_uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01, _uv_ratio.y/3.00000012E-01);
_a0116 = 2.00000000E+00/_wid;
_TMP25 = inversesqrt(_a0116.x);
_TMP26 = inversesqrt(_a0116.y);
_TMP27 = inversesqrt(_a0116.z);
_TMP28 = inversesqrt(_a0116.w);
_TMP20 = vec4(_TMP25, _TMP26, _TMP27, _TMP28);
_TMP3 = 1.00000000E+00/_TMP20;
_a0128 = _weights*_TMP3;
_TMP16 = pow(_a0128.x, _wid.x);
_TMP17 = pow(_a0128.y, _wid.y);
_TMP18 = pow(_a0128.z, _wid.z);
_TMP19 = pow(_a0128.w, _wid.w);
_TMP4 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_x0138 = -_TMP4;
_TMP16 = pow(2.71828198E+00, _x0138.x);
_TMP17 = pow(2.71828198E+00, _x0138.y);
_TMP18 = pow(2.71828198E+00, _x0138.z);
_TMP19 = pow(2.71828198E+00, _x0138.w);
_TMP137 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_weights = ((5.09999990E-01*_TMP137)/3.00000012E-01)/(6.00000024E-01 + 2.00000003E-01*_wid);
_TMP16 = pow(_col2.x, 4.00000000E+00);
_TMP17 = pow(_col2.y, 4.00000000E+00);
_TMP18 = pow(_col2.z, 4.00000000E+00);
_TMP19 = pow(_col2.w, 4.00000000E+00);
_TMP6 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_wid = 2.00000000E+00 + 4.00000000E+00*_TMP6;
_weights2 = vec4((1.00000000E+00 - _uv_ratio.y)/3.00000012E-01, (1.00000000E+00 - _uv_ratio.y)/3.00000012E-01, (1.00000000E+00 - _uv_ratio.y)/3.00000012E-01, (1.00000000E+00 - _uv_ratio.y)/3.00000012E-01);
_a0160 = 2.00000000E+00/_wid;
_TMP25 = inversesqrt(_a0160.x);
_TMP26 = inversesqrt(_a0160.y);
_TMP27 = inversesqrt(_a0160.z);
_TMP28 = inversesqrt(_a0160.w);
_TMP20 = vec4(_TMP25, _TMP26, _TMP27, _TMP28);
_TMP7 = 1.00000000E+00/_TMP20;
_a0172 = _weights2*_TMP7;
_TMP16 = pow(_a0172.x, _wid.x);
_TMP17 = pow(_a0172.y, _wid.y);
_TMP18 = pow(_a0172.z, _wid.z);
_TMP19 = pow(_a0172.w, _wid.w);
_TMP8 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_x0182 = -_TMP8;
_TMP16 = pow(2.71828198E+00, _x0182.x);
_TMP17 = pow(2.71828198E+00, _x0182.y);
_TMP18 = pow(2.71828198E+00, _x0182.z);
_TMP19 = pow(2.71828198E+00, _x0182.w);
_TMP181 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
_weights2 = ((5.09999990E-01*_TMP181)/3.00000012E-01)/(6.00000024E-01 + 2.00000003E-01*_wid);
_mcol = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00);
_a0194 = _xy.x*OutputSize.x;
_a0196 = _a0194/2.00000000E+00;
_TMP21 = abs(_a0196);
_TMP22 = fract(_TMP21);
_TMP23 = abs(2.00000000E+00);
_c0194 = _TMP22*_TMP23;
if (_a0194 < 0.00000000E+00) {
_TMP24 = -_c0194;
} else {
_TMP24 = _c0194;
}
if (_TMP24 < 1.00000000E+00) {
_mcol.y = 6.99999988E-01;
} else {
_mcol.xz = vec2( 6.99999988E-01, 6.99999988E-01);
}
_a0202 = _mcol*(_col*_weights + _col2*_weights2);
_TMP16 = pow(_a0202.x, 4.54545438E-01);
_TMP17 = pow(_a0202.y, 4.54545438E-01);
_TMP18 = pow(_a0202.z, 4.54545438E-01);
_TMP19 = pow(_a0202.w, 4.54545438E-01);
_OUT._color = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
FragColor = _OUT._color;
return;
}
#endif

View file

@ -0,0 +1,211 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 VARc21_22;
COMPAT_VARYING vec4 VARc12_20;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec4 VARc02_10;
COMPAT_VARYING vec4 VARc00_01;
struct tex_coords {
vec4 VARc00_01;
vec4 VARc02_10;
vec2 VARc11;
vec4 VARc12_20;
vec4 VARc21_22;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
tex_coords _coords1;
input_dummy _IN1;
vec4 _r0015;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_VARYING vec4 COL0;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _delta;
vec2 _TMP3;
vec2 _TMP4;
vec2 _TMP5;
vec2 _TMP6;
vec2 _TMP7;
vec2 _TMP8;
vec2 _TMP9;
vec2 _TMP10;
tex_coords _TMP11;
_r0015 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0015 = _r0015 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0015 = _r0015 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0015 = _r0015 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0015;
_oColor = COLOR;
_delta = 5.00000000E-01/TextureSize;
_TMP9 = gl_MultiTexCoord0.xy + vec2(-_delta.x, -_delta.y);
_TMP10 = gl_MultiTexCoord0.xy + vec2(-_delta.x, 0.00000000E+00);
_TMP11.VARc00_01 = vec4(_TMP9.x, _TMP9.y, _TMP10.x, _TMP10.y);
_TMP7 = gl_MultiTexCoord0.xy + vec2(-_delta.x, _delta.y);
_TMP8 = gl_MultiTexCoord0.xy + vec2(0.00000000E+00, -_delta.y);
_TMP11.VARc02_10 = vec4(_TMP7.x, _TMP7.y, _TMP8.x, _TMP8.y);
_TMP5 = gl_MultiTexCoord0.xy + vec2(0.00000000E+00, _delta.y);
_TMP6 = gl_MultiTexCoord0.xy + vec2(_delta.x, -_delta.y);
_TMP11.VARc12_20 = vec4(_TMP5.x, _TMP5.y, _TMP6.x, _TMP6.y);
_TMP3 = gl_MultiTexCoord0.xy + vec2(_delta.x, 0.00000000E+00);
_TMP4 = gl_MultiTexCoord0.xy + vec2(_delta.x, _delta.y);
_TMP11.VARc21_22 = vec4(_TMP3.x, _TMP3.y, _TMP4.x, _TMP4.y);
VARc00_01 = _TMP11.VARc00_01;
VARc02_10 = _TMP11.VARc02_10;
VARc11 = gl_MultiTexCoord0.xy;
VARc12_20 = _TMP11.VARc12_20;
VARc21_22 = _TMP11.VARc21_22;
gl_Position = _r0015;
COL0 = COLOR;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 VARc21_22;
COMPAT_VARYING vec4 VARc12_20;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec4 VARc02_10;
COMPAT_VARYING vec4 VARc00_01;
struct tex_coords {
vec4 VARc00_01;
vec4 VARc02_10;
vec2 VARc11;
vec4 VARc12_20;
vec4 VARc21_22;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec3 _TMP15;
vec4 _TMP16;
vec3 _TMP14;
float _TMP13;
float _TMP12;
float _TMP11;
float _TMP10;
float _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
tex_coords _co1;
input_dummy _IN1;
uniform sampler2D Texture;
float _x0040;
float _x0044;
float _x0048;
float _x0052;
float _x0056;
vec3 _a0062;
vec4 _x0064;
vec4 _TMP65;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _first;
vec3 _second;
vec3 _mid_horiz;
vec3 _mid_vert;
vec3 _res;
vec3 _TMP20;
_TMP0 = COMPAT_TEXTURE(Texture, VARc00_01.xy);
_TMP1 = COMPAT_TEXTURE(Texture, VARc00_01.zw);
_TMP2 = COMPAT_TEXTURE(Texture, VARc02_10.xy);
_TMP3 = COMPAT_TEXTURE(Texture, VARc02_10.zw);
_TMP5 = COMPAT_TEXTURE(Texture, VARc12_20.xy);
_TMP6 = COMPAT_TEXTURE(Texture, VARc12_20.zw);
_TMP7 = COMPAT_TEXTURE(Texture, VARc21_22.xy);
_TMP8 = COMPAT_TEXTURE(Texture, VARc21_22.zw);
_x0040 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP9 = fract(_x0040);
_first = _TMP0.xyz + _TMP9*(_TMP6.xyz - _TMP0.xyz);
_x0044 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP10 = fract(_x0044);
_second = _TMP2.xyz + _TMP10*(_TMP8.xyz - _TMP2.xyz);
_x0048 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP11 = fract(_x0048);
_mid_horiz = _TMP1.xyz + _TMP11*(_TMP7.xyz - _TMP1.xyz);
_x0052 = VARc11.y*TextureSize.y + 5.00000000E-01;
_TMP12 = fract(_x0052);
_mid_vert = _TMP3.xyz + _TMP12*(_TMP5.xyz - _TMP3.xyz);
_x0056 = VARc11.y*TextureSize.y + 5.00000000E-01;
_TMP13 = fract(_x0056);
_res = _first + _TMP13*(_second - _first);
_TMP14 = _mid_horiz + 5.00000000E-01*(_mid_vert - _mid_horiz);
_a0062 = _res - _TMP14;
_TMP15 = abs(_a0062);
_TMP20 = 2.80000001E-01*(_res + _mid_horiz + _mid_vert) + 4.69999981E+00*_TMP15;
_x0064 = vec4(_TMP20.x, _TMP20.y, _TMP20.z, 1.00000000E+00);
_TMP16 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0064);
_TMP65 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP16);
FragColor = _TMP65;
return;
}
#endif

View file

@ -0,0 +1,219 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 VARc21_22;
COMPAT_VARYING vec4 VARc12_20;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec4 VARc02_10;
COMPAT_VARYING vec4 VARc00_01;
struct tex_coords {
vec4 VARc00_01;
vec4 VARc02_10;
vec2 VARc11;
vec4 VARc12_20;
vec4 VARc21_22;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _oPosition1;
tex_coords _coords1;
input_dummy _IN1;
vec4 _r0015;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_VARYING vec4 COL0;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec4 _oColor;
vec2 _delta;
vec2 _TMP3;
vec2 _TMP4;
vec2 _TMP5;
vec2 _TMP6;
vec2 _TMP7;
vec2 _TMP8;
vec2 _TMP9;
vec2 _TMP10;
tex_coords _TMP11;
_r0015 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0015 = _r0015 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0015 = _r0015 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0015 = _r0015 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_oPosition1 = _r0015;
_oColor = COLOR;
_delta = 5.00000000E-01/TextureSize;
_TMP9 = gl_MultiTexCoord0.xy + vec2(-_delta.x, -_delta.y);
_TMP10 = gl_MultiTexCoord0.xy + vec2(-_delta.x, 0.00000000E+00);
_TMP11.VARc00_01 = vec4(_TMP9.x, _TMP9.y, _TMP10.x, _TMP10.y);
_TMP7 = gl_MultiTexCoord0.xy + vec2(-_delta.x, _delta.y);
_TMP8 = gl_MultiTexCoord0.xy + vec2(0.00000000E+00, -_delta.y);
_TMP11.VARc02_10 = vec4(_TMP7.x, _TMP7.y, _TMP8.x, _TMP8.y);
_TMP5 = gl_MultiTexCoord0.xy + vec2(0.00000000E+00, _delta.y);
_TMP6 = gl_MultiTexCoord0.xy + vec2(_delta.x, -_delta.y);
_TMP11.VARc12_20 = vec4(_TMP5.x, _TMP5.y, _TMP6.x, _TMP6.y);
_TMP3 = gl_MultiTexCoord0.xy + vec2(_delta.x, 0.00000000E+00);
_TMP4 = gl_MultiTexCoord0.xy + vec2(_delta.x, _delta.y);
_TMP11.VARc21_22 = vec4(_TMP3.x, _TMP3.y, _TMP4.x, _TMP4.y);
VARc00_01 = _TMP11.VARc00_01;
VARc02_10 = _TMP11.VARc02_10;
VARc11 = gl_MultiTexCoord0.xy;
VARc12_20 = _TMP11.VARc12_20;
VARc21_22 = _TMP11.VARc21_22;
gl_Position = _r0015;
COL0 = COLOR;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING float _frame_rotation;
COMPAT_VARYING vec4 VARc21_22;
COMPAT_VARYING vec4 VARc12_20;
COMPAT_VARYING vec2 VARc11;
COMPAT_VARYING vec4 VARc02_10;
COMPAT_VARYING vec4 VARc00_01;
struct tex_coords {
vec4 VARc00_01;
vec4 VARc02_10;
vec2 VARc11;
vec4 VARc12_20;
vec4 VARc21_22;
};
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
vec4 _ret_0;
vec3 _TMP18;
vec3 _TMP17;
vec3 _TMP15;
vec3 _TMP14;
float _TMP13;
float _TMP12;
float _TMP11;
float _TMP10;
float _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
tex_coords _co1;
input_dummy _IN1;
uniform sampler2D Texture;
float _x0042;
float _x0046;
float _x0050;
float _x0054;
float _x0058;
vec3 _a0064;
vec3 _diff0066;
vec3 _TMP67;
vec3 _x0074;
vec3 _TMP75;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
vec3 _first;
vec3 _second;
vec3 _mid_horiz;
vec3 _mid_vert;
vec3 _res;
vec3 _final;
_TMP0 = COMPAT_TEXTURE(Texture, VARc00_01.xy);
_TMP1 = COMPAT_TEXTURE(Texture, VARc00_01.zw);
_TMP2 = COMPAT_TEXTURE(Texture, VARc02_10.xy);
_TMP3 = COMPAT_TEXTURE(Texture, VARc02_10.zw);
_TMP5 = COMPAT_TEXTURE(Texture, VARc12_20.xy);
_TMP6 = COMPAT_TEXTURE(Texture, VARc12_20.zw);
_TMP7 = COMPAT_TEXTURE(Texture, VARc21_22.xy);
_TMP8 = COMPAT_TEXTURE(Texture, VARc21_22.zw);
_x0042 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP9 = fract(_x0042);
_first = _TMP0.xyz + _TMP9*(_TMP6.xyz - _TMP0.xyz);
_x0046 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP10 = fract(_x0046);
_second = _TMP2.xyz + _TMP10*(_TMP8.xyz - _TMP2.xyz);
_x0050 = VARc11.x*TextureSize.x + 5.00000000E-01;
_TMP11 = fract(_x0050);
_mid_horiz = _TMP1.xyz + _TMP11*(_TMP7.xyz - _TMP1.xyz);
_x0054 = VARc11.y*TextureSize.y + 5.00000000E-01;
_TMP12 = fract(_x0054);
_mid_vert = _TMP3.xyz + _TMP12*(_TMP5.xyz - _TMP3.xyz);
_x0058 = VARc11.y*TextureSize.y + 5.00000000E-01;
_TMP13 = fract(_x0058);
_res = _first + _TMP13*(_second - _first);
_TMP14 = _mid_horiz + 5.00000000E-01*(_mid_vert - _mid_horiz);
_a0064 = _res - _TMP14;
_TMP15 = abs(_a0064);
_final = 2.59999990E-01*(_res + _mid_horiz + _mid_vert) + 3.50000000E+00*_TMP15;
_diff0066 = _final - vec3( 8.00000012E-01, 8.00000012E-01, 8.00000012E-01);
_TMP17 = min(vec3( 1.00000000E+02, 1.00000000E+02, 1.00000000E+02), _diff0066);
_TMP67 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP17);
_x0074 = _final - _TMP67*8.00000012E-01;
_TMP18 = min(vec3( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0074);
_TMP75 = max(vec3( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP18);
_ret_0 = vec4(_TMP75.x, _TMP75.y, _TMP75.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,352 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _position1;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec4 _position1;
vec2 _texCoord2;
vec4 _t1;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0008;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1.xy = vec2(0.00000000E+00, -_ps.y);
_OUT._t1.zw = vec2(-_ps.x, 0.00000000E+00);
_ret_0._position1 = _r0008;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
gl_Position = _r0008;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
return;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING float _frame_rotation;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
float _frame_count;
float _frame_direction;
float _frame_rotation;
};
struct out_vertex {
vec2 _texCoord;
vec4 _t1;
};
vec4 _ret_0;
vec3 _TMP29;
vec3 _TMP30;
float _TMP26;
float _TMP25;
bool _TMP24;
bool _TMP23;
bool _TMP22;
bool _TMP21;
bool _TMP20;
bool _TMP19;
bool _TMP18;
bool _TMP17;
bool _TMP16;
bool _TMP15;
bool _TMP14;
float _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec2 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0043;
vec2 _val0045;
vec2 _c0047;
vec2 _c0049;
vec2 _c0051;
vec2 _c0055;
vec2 _c0057;
vec2 _c0059;
vec2 _c0061;
vec2 _c0063;
vec2 _c0065;
vec2 _c0067;
vec2 _c0069;
float _TMP70;
float _TMP74;
float _TMP78;
float _TMP82;
float _TMP86;
float _TMP90;
float _TMP94;
float _TMP98;
float _TMP102;
float _TMP106;
float _TMP110;
float _TMP114;
float _TMP122;
float _a0125;
float _TMP128;
float _a0131;
float _TMP134;
float _a0137;
float _TMP140;
float _a0143;
float _TMP146;
float _a0149;
float _TMP152;
float _a0155;
float _TMP158;
float _a0161;
float _TMP164;
float _a0167;
float _TMP170;
float _a0173;
float _TMP176;
float _a0179;
float _TMP182;
float _a0185;
float _TMP188;
float _a0191;
float _TMP192;
float _a0195;
float _TMP196;
float _a0199;
float _TMP200;
float _a0203;
float _TMP204;
float _a0207;
float _TMP210;
float _a0213;
float _TMP214;
float _a0217;
float _TMP218;
float _a0221;
float _TMP222;
float _a0225;
float _TMP226;
float _a0229;
float _TMP230;
float _a0233;
float _TMP234;
float _a0237;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bool _edr;
bool _px;
bool _interp_restriction_lv1;
bool _nc;
bool _fx;
vec2 _pos;
vec2 _dir;
vec2 _g1;
vec2 _g2;
_x0043 = TEX0.xy*TextureSize;
_TMP0 = fract(_x0043);
_pos = _TMP0 - vec2( 5.00000000E-01, 5.00000000E-01);
_val0045 = vec2(float((_pos.x > 0.00000000E+00)), float((_pos.y > 0.00000000E+00)));
_dir = _val0045 - vec2(float((_pos.x < 0.00000000E+00)), float((_pos.y < 0.00000000E+00)));
_g1 = _dir*TEX1.xy;
_g2 = _dir*TEX1.zw;
_c0047 = TEX0.xy + _g1;
_TMP1 = COMPAT_TEXTURE(Texture, _c0047);
_c0049 = (TEX0.xy + _g1) - _g2;
_TMP2 = COMPAT_TEXTURE(Texture, _c0049);
_c0051 = TEX0.xy + _g2;
_TMP3 = COMPAT_TEXTURE(Texture, _c0051);
_TMP4 = COMPAT_TEXTURE(Texture, TEX0.xy);
_c0055 = TEX0.xy - _g2;
_TMP5 = COMPAT_TEXTURE(Texture, _c0055);
_c0057 = (TEX0.xy - _g1) + _g2;
_TMP6 = COMPAT_TEXTURE(Texture, _c0057);
_c0059 = TEX0.xy - _g1;
_TMP7 = COMPAT_TEXTURE(Texture, _c0059);
_c0061 = (TEX0.xy - _g1) - _g2;
_TMP8 = COMPAT_TEXTURE(Texture, _c0061);
_c0063 = TEX0.xy - 2.00000000E+00*_g2;
_TMP9 = COMPAT_TEXTURE(Texture, _c0063);
_c0065 = (TEX0.xy - _g1) - 2.00000000E+00*_g2;
_TMP10 = COMPAT_TEXTURE(Texture, _c0065);
_c0067 = TEX0.xy - 2.00000000E+00*_g1;
_TMP11 = COMPAT_TEXTURE(Texture, _c0067);
_c0069 = (TEX0.xy - 2.00000000E+00*_g1) - _g2;
_TMP12 = COMPAT_TEXTURE(Texture, _c0069);
_TMP70 = dot(_TMP1.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP74 = dot(_TMP2.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP78 = dot(_TMP3.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP82 = dot(_TMP4.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP86 = dot(_TMP5.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP90 = dot(_TMP6.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP94 = dot(_TMP7.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP98 = dot(_TMP8.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP102 = dot(_TMP10.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP106 = dot(_TMP12.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP110 = dot(_TMP11.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP114 = dot(_TMP9.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_TMP13 = dot(_dir, _pos);
_fx = _TMP13 > 5.00000000E-01;
_a0125 = _TMP86 - _TMP70;
_TMP122 = abs(_a0125);
_TMP14 = _TMP122 < 1.50000000E+01;
_a0131 = _TMP86 - _TMP74;
_TMP128 = abs(_a0131);
_TMP15 = _TMP128 < 1.50000000E+01;
_a0137 = _TMP94 - _TMP78;
_TMP134 = abs(_a0137);
_TMP16 = _TMP134 < 1.50000000E+01;
_a0143 = _TMP94 - _TMP90;
_TMP140 = abs(_a0143);
_TMP17 = _TMP140 < 1.50000000E+01;
_a0149 = _TMP82 - _TMP98;
_TMP146 = abs(_a0149);
_TMP18 = _TMP146 < 1.50000000E+01;
_a0155 = _TMP86 - _TMP114;
_TMP152 = abs(_a0155);
_TMP19 = _TMP152 < 1.50000000E+01;
_a0161 = _TMP86 - _TMP102;
_TMP158 = abs(_a0161);
_TMP20 = _TMP158 < 1.50000000E+01;
_a0167 = _TMP94 - _TMP110;
_TMP164 = abs(_a0167);
_TMP21 = _TMP164 < 1.50000000E+01;
_a0173 = _TMP94 - _TMP106;
_TMP170 = abs(_a0173);
_TMP22 = _TMP170 < 1.50000000E+01;
_a0179 = _TMP82 - _TMP90;
_TMP176 = abs(_a0179);
_TMP23 = _TMP176 < 1.50000000E+01;
_a0185 = _TMP82 - _TMP74;
_TMP182 = abs(_a0185);
_TMP24 = _TMP182 < 1.50000000E+01;
_interp_restriction_lv1 = _TMP82 != _TMP86 && _TMP82 != _TMP94 && (!_TMP14 && !_TMP15 || !_TMP16 && !_TMP17 || _TMP18 && (!_TMP19 && !_TMP20 || !_TMP21 && !_TMP22) || _TMP23 || _TMP24);
_a0191 = _TMP82 - _TMP74;
_TMP188 = abs(_a0191);
_a0195 = _TMP82 - _TMP90;
_TMP192 = abs(_a0195);
_a0199 = _TMP98 - _TMP110;
_TMP196 = abs(_a0199);
_a0203 = _TMP98 - _TMP114;
_TMP200 = abs(_a0203);
_a0207 = _TMP94 - _TMP86;
_TMP204 = abs(_a0207);
_TMP25 = _TMP188 + _TMP192 + _TMP196 + _TMP200 + 4.00000000E+00*_TMP204;
_a0213 = _TMP94 - _TMP78;
_TMP210 = abs(_a0213);
_a0217 = _TMP94 - _TMP106;
_TMP214 = abs(_a0217);
_a0221 = _TMP86 - _TMP102;
_TMP218 = abs(_a0221);
_a0225 = _TMP86 - _TMP70;
_TMP222 = abs(_a0225);
_a0229 = _TMP82 - _TMP98;
_TMP226 = abs(_a0229);
_TMP26 = _TMP210 + _TMP214 + _TMP218 + _TMP222 + 4.00000000E+00*_TMP226;
_edr = _TMP25 < _TMP26 && _interp_restriction_lv1;
_nc = _edr && _fx;
_a0233 = _TMP82 - _TMP86;
_TMP230 = abs(_a0233);
_a0237 = _TMP82 - _TMP94;
_TMP234 = abs(_a0237);
_px = _TMP230 <= _TMP234;
if (_nc) {
if (_px) {
_TMP30 = _TMP5.xyz;
} else {
_TMP30 = _TMP7.xyz;
}
_TMP29 = _TMP30;
} else {
_TMP29 = _TMP4.xyz;
}
_ret_0 = vec4(_TMP29.x, _TMP29.y, _TMP29.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,366 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord1;
vec4 _t1;
vec4 _t2;
vec4 _t3;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_OUT._t1 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -_ps.y);
_OUT._t2 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 0.00000000E+00);
_OUT._t3 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, _ps.y);
_ret_0._position1 = _r0006;
_ret_0._color1 = COLOR;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord1;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
};
vec4 _ret_0;
float _TMP30;
float _TMP29;
float _TMP28;
vec3 _TMP27;
vec3 _TMP26;
vec3 _TMP25;
vec3 _TMP24;
vec4 _TMP23;
vec4 _TMP22;
vec4 _TMP35;
bvec4 _TMP15;
bvec4 _TMP14;
bvec4 _TMP13;
bvec4 _TMP12;
bvec4 _TMP11;
bvec4 _TMP10;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0044;
vec4 _r0064;
vec4 _r0074;
vec4 _r0084;
vec4 _TMP95;
vec4 _a0098;
vec4 _TMP101;
vec4 _a0104;
vec4 _TMP107;
vec4 _a0110;
vec4 _TMP113;
vec4 _a0116;
vec4 _TMP119;
vec4 _a0122;
vec4 _TMP125;
vec4 _a0128;
vec4 _x0130;
vec4 _TMP131;
vec4 _x0138;
vec4 _TMP139;
vec4 _x0146;
vec4 _TMP147;
vec4 _x0154;
vec4 _TMP155;
vec4 _TMP163;
vec4 _a0166;
vec4 _TMP167;
vec4 _a0170;
vec4 _TMP171;
vec4 _a0174;
vec4 _TMP177;
vec4 _a0180;
vec4 _TMP181;
vec4 _a0184;
vec4 _TMP185;
vec4 _a0188;
vec4 _TMP189;
vec4 _a0192;
vec4 _TMP193;
vec4 _a0196;
vec4 _TMP197;
vec4 _a0200;
vec4 _TMP201;
vec4 _a0204;
vec4 _TMP205;
vec4 _a0208;
vec4 _TMP209;
vec4 _a0212;
float _t0220;
float _t0224;
float _t0228;
float _t0232;
vec3 _df0236;
vec3 _a0238;
vec3 _df0240;
vec3 _a0242;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bvec4 _edri;
bvec4 _edr;
bvec4 _edr_left;
bvec4 _edr_up;
bvec4 _px;
bvec4 _interp_restriction_lv0;
bvec4 _interp_restriction_lv1;
bvec4 _interp_restriction_lv2_left;
bvec4 _interp_restriction_lv2_up;
vec4 _fx;
vec4 _fx_left;
vec4 _fx_up;
vec2 _fp;
vec4 _fx45i;
vec4 _fx45;
vec4 _fx30;
vec4 _fx60;
vec4 _wd1;
vec4 _wd2;
vec4 _maximos;
vec3 _res1;
vec3 _res2;
vec3 _res;
_x0044 = TEX0.xy*TextureSize;
_fp = fract(_x0044);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yw);
_TMP2 = COMPAT_TEXTURE(Texture, TEX1.zw);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP4 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX2.zw);
_TMP6 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.zw);
_r0064.x = dot(_TMP1.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0064.y = dot(_TMP3.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0064.z = dot(_TMP7.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0064.w = dot(_TMP5.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0074.x = dot(_TMP2.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0074.y = dot(_TMP0.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0074.z = dot(_TMP6.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0074.w = dot(_TMP8.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0084.x = dot(_TMP4.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0084.y = dot(_TMP4.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0084.z = dot(_TMP4.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0084.w = dot(_TMP4.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_fx = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x;
_fx_left = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x;
_fx_up = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x;
_interp_restriction_lv0 = bvec4(_r0084.x != _r0064.w && _r0084.x != _r0064.z, _r0084.y != _r0064.x && _r0084.y != _r0064.w, _r0084.z != _r0064.y && _r0084.z != _r0064.x, _r0084.w != _r0064.z && _r0084.w != _r0064.y);
_a0098 = _r0064.wxyz - _r0064;
_TMP95 = abs(_a0098);
_TMP10 = bvec4(_TMP95.x < 1.50000000E+01, _TMP95.y < 1.50000000E+01, _TMP95.z < 1.50000000E+01, _TMP95.w < 1.50000000E+01);
_a0104 = _r0064.wxyz - _r0074;
_TMP101 = abs(_a0104);
_TMP11 = bvec4(_TMP101.x < 1.50000000E+01, _TMP101.y < 1.50000000E+01, _TMP101.z < 1.50000000E+01, _TMP101.w < 1.50000000E+01);
_a0110 = _r0064.zwxy - _r0064.yzwx;
_TMP107 = abs(_a0110);
_TMP12 = bvec4(_TMP107.x < 1.50000000E+01, _TMP107.y < 1.50000000E+01, _TMP107.z < 1.50000000E+01, _TMP107.w < 1.50000000E+01);
_a0116 = _r0064.zwxy - _r0074.zwxy;
_TMP113 = abs(_a0116);
_TMP13 = bvec4(_TMP113.x < 1.50000000E+01, _TMP113.y < 1.50000000E+01, _TMP113.z < 1.50000000E+01, _TMP113.w < 1.50000000E+01);
_a0122 = _r0084 - _r0074.zwxy;
_TMP119 = abs(_a0122);
_TMP14 = bvec4(_TMP119.x < 1.50000000E+01, _TMP119.y < 1.50000000E+01, _TMP119.z < 1.50000000E+01, _TMP119.w < 1.50000000E+01);
_a0128 = _r0084 - _r0074;
_TMP125 = abs(_a0128);
_TMP15 = bvec4(_TMP125.x < 1.50000000E+01, _TMP125.y < 1.50000000E+01, _TMP125.z < 1.50000000E+01, _TMP125.w < 1.50000000E+01);
_interp_restriction_lv1 = bvec4(_interp_restriction_lv0.x && (!_TMP10.x && !_TMP11.x || !_TMP12.x && !_TMP13.x || _TMP14.x || _TMP15.x), _interp_restriction_lv0.y && (!_TMP10.y && !_TMP11.y || !_TMP12.y && !_TMP13.y || _TMP14.y || _TMP15.y), _interp_restriction_lv0.z && (!_TMP10.z && !_TMP11.z || !_TMP12.z && !_TMP13.z || _TMP14.z || _TMP15.z), _interp_restriction_lv0.w && (!_TMP10.w && !_TMP11.w || !_TMP12.w && !_TMP13.w || _TMP14.w || _TMP15.w));
_interp_restriction_lv2_left = bvec4(_r0084.x != _r0074.z && _r0064.y != _r0074.z, _r0084.y != _r0074.w && _r0064.z != _r0074.w, _r0084.z != _r0074.x && _r0064.w != _r0074.x, _r0084.w != _r0074.y && _r0064.x != _r0074.y);
_interp_restriction_lv2_up = bvec4(_r0084.x != _r0074.x && _r0064.x != _r0074.x, _r0084.y != _r0074.y && _r0064.y != _r0074.y, _r0084.z != _r0074.z && _r0064.z != _r0074.z, _r0084.w != _r0074.w && _r0064.w != _r0074.w);
_x0130 = (((_fx + vec4( 3.33333343E-01, 3.33333343E-01, 3.33333343E-01, 3.33333343E-01)) - vec4( 1.50000000E+00, 5.00000000E-01, -5.00000000E-01, 5.00000000E-01)) - vec4( 2.50000000E-01, 2.50000000E-01, 2.50000000E-01, 2.50000000E-01))/vec4( 6.66666687E-01, 6.66666687E-01, 6.66666687E-01, 6.66666687E-01);
_TMP35 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0130);
_TMP131 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP35);
_x0138 = ((_fx + vec4( 3.33333343E-01, 3.33333343E-01, 3.33333343E-01, 3.33333343E-01)) - vec4( 1.50000000E+00, 5.00000000E-01, -5.00000000E-01, 5.00000000E-01))/vec4( 6.66666687E-01, 6.66666687E-01, 6.66666687E-01, 6.66666687E-01);
_TMP35 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0138);
_TMP139 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP35);
_x0146 = ((_fx_left + vec4( 1.66666672E-01, 3.33333343E-01, 1.66666672E-01, 3.33333343E-01)) - vec4( 1.00000000E+00, 1.00000000E+00, -5.00000000E-01, 0.00000000E+00))/vec4( 3.33333343E-01, 6.66666687E-01, 3.33333343E-01, 6.66666687E-01);
_TMP35 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0146);
_TMP147 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP35);
_x0154 = ((_fx_up + vec4( 3.33333343E-01, 1.66666672E-01, 3.33333343E-01, 1.66666672E-01)) - vec4( 2.00000000E+00, 0.00000000E+00, -1.00000000E+00, 5.00000000E-01))/vec4( 6.66666687E-01, 3.33333343E-01, 6.66666687E-01, 3.33333343E-01);
_TMP35 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0154);
_TMP155 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP35);
_a0166 = _r0074.zwxy - _r0084;
_TMP163 = abs(_a0166);
_a0170 = _r0084 - _r0074;
_TMP167 = abs(_a0170);
_a0174 = _r0064.zwxy - _r0064.wxyz;
_TMP171 = abs(_a0174);
_wd1 = _TMP163 + _TMP167 + 3.00000000E+00*_TMP171;
_a0180 = _r0064 - _r0064.wxyz;
_TMP177 = abs(_a0180);
_a0184 = _r0064.yzwx - _r0064.zwxy;
_TMP181 = abs(_a0184);
_a0188 = _r0084 - _r0074.wxyz;
_TMP185 = abs(_a0188);
_wd2 = _TMP177 + _TMP181 + 3.00000000E+00*_TMP185;
_edri = bvec4(_wd1.x <= _wd2.x && _interp_restriction_lv0.x, _wd1.y <= _wd2.y && _interp_restriction_lv0.y, _wd1.z <= _wd2.z && _interp_restriction_lv0.z, _wd1.w <= _wd2.w && _interp_restriction_lv0.w);
_edr = bvec4(_wd1.x < _wd2.x && _interp_restriction_lv1.x, _wd1.y < _wd2.y && _interp_restriction_lv1.y, _wd1.z < _wd2.z && _interp_restriction_lv1.z, _wd1.w < _wd2.w && _interp_restriction_lv1.w);
_a0192 = _r0064.wxyz - _r0074.zwxy;
_TMP189 = abs(_a0192);
_a0196 = _r0064.zwxy - _r0074;
_TMP193 = abs(_a0196);
_edr_left = bvec4((2.00000000E+00*_TMP189).x <= _TMP193.x && _interp_restriction_lv2_left.x && _edr.x, (2.00000000E+00*_TMP189).y <= _TMP193.y && _interp_restriction_lv2_left.y && _edr.y, (2.00000000E+00*_TMP189).z <= _TMP193.z && _interp_restriction_lv2_left.z && _edr.z, (2.00000000E+00*_TMP189).w <= _TMP193.w && _interp_restriction_lv2_left.w && _edr.w);
_a0200 = _r0064.wxyz - _r0074.zwxy;
_TMP197 = abs(_a0200);
_a0204 = _r0064.zwxy - _r0074;
_TMP201 = abs(_a0204);
_edr_up = bvec4(_TMP197.x >= (2.00000000E+00*_TMP201).x && _interp_restriction_lv2_up.x && _edr.x, _TMP197.y >= (2.00000000E+00*_TMP201).y && _interp_restriction_lv2_up.y && _edr.y, _TMP197.z >= (2.00000000E+00*_TMP201).z && _interp_restriction_lv2_up.z && _edr.z, _TMP197.w >= (2.00000000E+00*_TMP201).w && _interp_restriction_lv2_up.w && _edr.w);
_fx45 = vec4(float(_edr.x), float(_edr.y), float(_edr.z), float(_edr.w))*_TMP139;
_fx30 = vec4(float(_edr_left.x), float(_edr_left.y), float(_edr_left.z), float(_edr_left.w))*_TMP147;
_fx60 = vec4(float(_edr_up.x), float(_edr_up.y), float(_edr_up.z), float(_edr_up.w))*_TMP155;
_fx45i = vec4(float(_edri.x), float(_edri.y), float(_edri.z), float(_edri.w))*_TMP131;
_a0208 = _r0084 - _r0064.wxyz;
_TMP205 = abs(_a0208);
_a0212 = _r0084 - _r0064.zwxy;
_TMP209 = abs(_a0212);
_px = bvec4(_TMP205.x <= _TMP209.x, _TMP205.y <= _TMP209.y, _TMP205.z <= _TMP209.z, _TMP205.w <= _TMP209.w);
_TMP22 = max(_fx30, _fx60);
_TMP23 = max(_fx45, _fx45i);
_maximos = max(_TMP22, _TMP23);
_t0220 = float(_px.x);
_TMP24 = _TMP7.xyz + _t0220*(_TMP5.xyz - _TMP7.xyz);
_res1 = _TMP4.xyz + _maximos.x*(_TMP24 - _TMP4.xyz);
_t0224 = float(_px.z);
_TMP25 = _TMP1.xyz + _t0224*(_TMP3.xyz - _TMP1.xyz);
_res1 = _res1 + _maximos.z*(_TMP25 - _res1);
_t0228 = float(_px.y);
_TMP26 = _TMP5.xyz + _t0228*(_TMP1.xyz - _TMP5.xyz);
_res2 = _TMP4.xyz + _maximos.y*(_TMP26 - _TMP4.xyz);
_t0232 = float(_px.w);
_TMP27 = _TMP3.xyz + _t0232*(_TMP7.xyz - _TMP3.xyz);
_res2 = _res2 + _maximos.w*(_TMP27 - _res2);
_a0238 = _TMP4.xyz - _res1;
_df0236 = abs(_a0238);
_TMP28 = _df0236.x + _df0236.y + _df0236.z;
_a0242 = _TMP4.xyz - _res2;
_df0240 = abs(_a0242);
_TMP29 = _df0240.x + _df0240.y + _df0240.z;
_TMP30 = float((_TMP29 >= _TMP28));
_res = _res1 + _TMP30*(_res2 - _res1);
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,448 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord1;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_OUT._t1 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -2.00000000E+00*_ps.y);
_OUT._t2 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -_ps.y);
_OUT._t3 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 0.00000000E+00);
_OUT._t4 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, _ps.y);
_OUT._t5 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 2.00000000E+00*_ps.y);
_OUT._t6 = gl_MultiTexCoord0.xyyy + vec4(-2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_OUT._t7 = gl_MultiTexCoord0.xyyy + vec4(2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_ret_0._position1 = _r0006;
_ret_0._color1 = COLOR;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
_ret_0._t4 = _OUT._t4;
_ret_0._t5 = _OUT._t5;
_ret_0._t6 = _OUT._t6;
_ret_0._t7 = _OUT._t7;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
TEX4 = _OUT._t4;
TEX5 = _OUT._t5;
TEX6 = _OUT._t6;
TEX7 = _OUT._t7;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord1;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
TEX5 = _ret_0._t5;
TEX6 = _ret_0._t6;
TEX7 = _ret_0._t7;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
vec4 _ret_0;
float _TMP42;
vec3 _TMP35;
vec3 _TMP37;
vec3 _TMP39;
vec3 _TMP40;
vec3 _TMP38;
vec3 _TMP36;
vec3 _TMP29;
vec3 _TMP31;
vec3 _TMP33;
vec3 _TMP34;
vec3 _TMP32;
vec3 _TMP30;
bvec4 _TMP26;
bvec4 _TMP23;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0061;
vec4 _r0105;
vec4 _r0115;
vec4 _r0125;
vec4 _r0135;
vec4 _r0145;
vec4 _r0155;
vec4 _TMP166;
vec4 _a0169;
vec4 _TMP170;
vec4 _a0173;
vec4 _TMP174;
vec4 _a0177;
vec4 _TMP178;
vec4 _a0181;
vec4 _TMP182;
vec4 _a0185;
vec4 _TMP188;
vec4 _a0191;
vec4 _TMP192;
vec4 _a0195;
vec4 _TMP196;
vec4 _a0199;
vec4 _TMP200;
vec4 _a0203;
vec4 _TMP204;
vec4 _a0207;
vec4 _TMP208;
vec4 _a0211;
vec4 _TMP212;
vec4 _a0215;
vec4 _TMP218;
vec4 _a0221;
vec4 _TMP222;
vec4 _a0225;
vec4 _TMP226;
vec4 _a0229;
vec4 _TMP232;
vec4 _a0235;
vec4 _TMP236;
vec4 _a0239;
vec4 _TMP240;
vec4 _a0243;
vec2 _r0245;
vec2 _a0251;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bvec4 _edri;
bvec4 _edr;
bvec4 _edr_left;
bvec4 _edr_up;
bvec4 _px;
bvec4 _interp_restriction_lv1;
bvec4 _interp_restriction_lv2_left;
bvec4 _interp_restriction_lv2_up;
bvec4 _nc;
bvec4 _fx;
bvec4 _fx_left;
bvec4 _fx_up;
vec2 _fp;
vec4 _wd1;
vec4 _wd2;
vec2 _df12;
vec3 _res;
_x0061 = TEX0.xy*TextureSize;
_fp = fract(_x0061);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yw);
_TMP2 = COMPAT_TEXTURE(Texture, TEX1.zw);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP4 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX2.zw);
_TMP6 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.zw);
_TMP9 = COMPAT_TEXTURE(Texture, TEX4.xw);
_TMP10 = COMPAT_TEXTURE(Texture, TEX4.yw);
_TMP11 = COMPAT_TEXTURE(Texture, TEX4.zw);
_TMP12 = COMPAT_TEXTURE(Texture, TEX5.xw);
_TMP13 = COMPAT_TEXTURE(Texture, TEX5.yw);
_TMP14 = COMPAT_TEXTURE(Texture, TEX5.zw);
_TMP15 = COMPAT_TEXTURE(Texture, TEX6.xy);
_TMP16 = COMPAT_TEXTURE(Texture, TEX6.xz);
_TMP17 = COMPAT_TEXTURE(Texture, TEX6.xw);
_TMP18 = COMPAT_TEXTURE(Texture, TEX7.xy);
_TMP19 = COMPAT_TEXTURE(Texture, TEX7.xz);
_TMP20 = COMPAT_TEXTURE(Texture, TEX7.xw);
_r0105.x = dot(_TMP4.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0105.y = dot(_TMP6.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0105.z = dot(_TMP10.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0105.w = dot(_TMP8.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0115.x = dot(_TMP5.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0115.y = dot(_TMP3.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0115.z = dot(_TMP9.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0115.w = dot(_TMP11.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0125.x = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0125.y = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0125.z = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0125.w = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0135.x = dot(_TMP20.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0135.y = dot(_TMP2.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0135.z = dot(_TMP15.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0135.w = dot(_TMP12.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0145.x = dot(_TMP14.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0145.y = dot(_TMP18.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0145.z = dot(_TMP0.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0145.w = dot(_TMP17.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0155.x = dot(_TMP13.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0155.y = dot(_TMP19.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0155.z = dot(_TMP1.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0155.w = dot(_TMP16.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_fx = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).x > 1.50000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).y > 5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).z > -5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).w > 5.00000000E-01);
_fx_left = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).x > 1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).y > 1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).z > -5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).w > 0.00000000E+00);
_fx_up = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).x > 2.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).y > 0.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).z > -1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).w > 5.00000000E-01);
_interp_restriction_lv1 = bvec4(_r0125.x != _r0105.w && _r0125.x != _r0105.z, _r0125.y != _r0105.x && _r0125.y != _r0105.w, _r0125.z != _r0105.y && _r0125.z != _r0105.x, _r0125.w != _r0105.z && _r0125.w != _r0105.y);
_interp_restriction_lv2_left = bvec4(_r0125.x != _r0115.z && _r0105.y != _r0115.z, _r0125.y != _r0115.w && _r0105.z != _r0115.w, _r0125.z != _r0115.x && _r0105.w != _r0115.x, _r0125.w != _r0115.y && _r0105.x != _r0115.y);
_interp_restriction_lv2_up = bvec4(_r0125.x != _r0115.x && _r0105.x != _r0115.x, _r0125.y != _r0115.y && _r0105.y != _r0115.y, _r0125.z != _r0115.z && _r0105.z != _r0115.z, _r0125.w != _r0115.w && _r0105.w != _r0115.w);
_a0169 = _r0125 - _r0115;
_TMP166 = abs(_a0169);
_a0173 = _r0125 - _r0115.zwxy;
_TMP170 = abs(_a0173);
_a0177 = _r0115.wxyz - _r0155;
_TMP174 = abs(_a0177);
_a0181 = _r0115.wxyz - _r0155.yzwx;
_TMP178 = abs(_a0181);
_a0185 = _r0105.zwxy - _r0105.wxyz;
_TMP182 = abs(_a0185);
_wd1 = _TMP166 + _TMP170 + _TMP174 + _TMP178 + 4.00000000E+00*_TMP182;
_a0191 = _r0105.zwxy - _r0105.yzwx;
_TMP188 = abs(_a0191);
_a0195 = _r0105.zwxy - _r0145;
_TMP192 = abs(_a0195);
_a0199 = _r0105.wxyz - _r0135;
_TMP196 = abs(_a0199);
_a0203 = _r0105.wxyz - _r0105;
_TMP200 = abs(_a0203);
_a0207 = _r0125 - _r0115.wxyz;
_TMP204 = abs(_a0207);
_wd2 = _TMP188 + _TMP192 + _TMP196 + _TMP200 + 4.00000000E+00*_TMP204;
_edri = bvec4(_wd1.x <= _wd2.x && _interp_restriction_lv1.x, _wd1.y <= _wd2.y && _interp_restriction_lv1.y, _wd1.z <= _wd2.z && _interp_restriction_lv1.z, _wd1.w <= _wd2.w && _interp_restriction_lv1.w);
_edr = bvec4(_wd1.x < _wd2.x && _interp_restriction_lv1.x, _wd1.y < _wd2.y && _interp_restriction_lv1.y, _wd1.z < _wd2.z && _interp_restriction_lv1.z, _wd1.w < _wd2.w && _interp_restriction_lv1.w);
_edr = bvec4(_edr.x && (!_edri.y || !_edri.w), _edr.y && (!_edri.z || !_edri.x), _edr.z && (!_edri.w || !_edri.y), _edr.w && (!_edri.x || !_edri.z));
_a0211 = _r0105.wxyz - _r0115.zwxy;
_TMP208 = abs(_a0211);
_a0215 = _r0105.zwxy - _r0115;
_TMP212 = abs(_a0215);
_a0221 = _r0125 - _r0115;
_TMP218 = abs(_a0221);
_TMP23 = bvec4(_TMP218.x < 6.00000024E-01, _TMP218.y < 6.00000024E-01, _TMP218.z < 6.00000024E-01, _TMP218.w < 6.00000024E-01);
_edr_left = bvec4((2.00000000E+00*_TMP208).x <= _TMP212.x && _interp_restriction_lv2_left.x && _edr.x && !_edri.y && _TMP23.x, (2.00000000E+00*_TMP208).y <= _TMP212.y && _interp_restriction_lv2_left.y && _edr.y && !_edri.z && _TMP23.y, (2.00000000E+00*_TMP208).z <= _TMP212.z && _interp_restriction_lv2_left.z && _edr.z && !_edri.w && _TMP23.z, (2.00000000E+00*_TMP208).w <= _TMP212.w && _interp_restriction_lv2_left.w && _edr.w && !_edri.x && _TMP23.w);
_a0225 = _r0105.wxyz - _r0115.zwxy;
_TMP222 = abs(_a0225);
_a0229 = _r0105.zwxy - _r0115;
_TMP226 = abs(_a0229);
_a0235 = _r0125 - _r0115.zwxy;
_TMP232 = abs(_a0235);
_TMP26 = bvec4(_TMP232.x < 6.00000024E-01, _TMP232.y < 6.00000024E-01, _TMP232.z < 6.00000024E-01, _TMP232.w < 6.00000024E-01);
_edr_up = bvec4(_TMP222.x >= (2.00000000E+00*_TMP226).x && _interp_restriction_lv2_up.x && _edr.x && !_edri.w && _TMP26.x, _TMP222.y >= (2.00000000E+00*_TMP226).y && _interp_restriction_lv2_up.y && _edr.y && !_edri.x && _TMP26.y, _TMP222.z >= (2.00000000E+00*_TMP226).z && _interp_restriction_lv2_up.z && _edr.z && !_edri.y && _TMP26.z, _TMP222.w >= (2.00000000E+00*_TMP226).w && _interp_restriction_lv2_up.w && _edr.w && !_edri.z && _TMP26.w);
_nc = bvec4(_edr.x && (_fx.x || _edr_left.x && _fx_left.x || _edr_up.x && _fx_up.x), _edr.y && (_fx.y || _edr_left.y && _fx_left.y || _edr_up.y && _fx_up.y), _edr.z && (_fx.z || _edr_left.z && _fx_left.z || _edr_up.z && _fx_up.z), _edr.w && (_fx.w || _edr_left.w && _fx_left.w || _edr_up.w && _fx_up.w));
_a0239 = _r0125 - _r0105.wxyz;
_TMP236 = abs(_a0239);
_a0243 = _r0125 - _r0105.zwxy;
_TMP240 = abs(_a0243);
_px = bvec4(_TMP236.x <= _TMP240.x, _TMP236.y <= _TMP240.y, _TMP236.z <= _TMP240.z, _TMP236.w <= _TMP240.w);
if (_nc.x) {
if (_px.x) {
_TMP30 = _TMP8.xyz;
} else {
_TMP30 = _TMP10.xyz;
}
_TMP29 = _TMP30;
} else {
if (_nc.y) {
if (_px.y) {
_TMP32 = _TMP4.xyz;
} else {
_TMP32 = _TMP8.xyz;
}
_TMP31 = _TMP32;
} else {
if (_nc.z) {
if (_px.z) {
_TMP34 = _TMP6.xyz;
} else {
_TMP34 = _TMP4.xyz;
}
_TMP33 = _TMP34;
} else {
_TMP33 = _TMP7.xyz;
}
_TMP31 = _TMP33;
}
_TMP29 = _TMP31;
}
if (_nc.w) {
if (_px.w) {
_TMP36 = _TMP10.xyz;
} else {
_TMP36 = _TMP6.xyz;
}
_TMP35 = _TMP36;
} else {
if (_nc.z) {
if (_px.z) {
_TMP38 = _TMP6.xyz;
} else {
_TMP38 = _TMP4.xyz;
}
_TMP37 = _TMP38;
} else {
if (_nc.y) {
if (_px.y) {
_TMP40 = _TMP4.xyz;
} else {
_TMP40 = _TMP8.xyz;
}
_TMP39 = _TMP40;
} else {
_TMP39 = _TMP7.xyz;
}
_TMP37 = _TMP39;
}
_TMP35 = _TMP37;
}
_r0245.x = dot(_TMP29, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0245.y = dot(_TMP35, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_a0251 = _r0245 - _r0125.xy;
_df12 = abs(_a0251);
_TMP42 = float((_df12.y >= _df12.x));
_res = _TMP29 + _TMP42*(_TMP35 - _TMP29);
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,436 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord1;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord1;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_OUT._t1 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -2.00000000E+00*_ps.y);
_OUT._t2 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -_ps.y);
_OUT._t3 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 0.00000000E+00);
_OUT._t4 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, _ps.y);
_OUT._t5 = gl_MultiTexCoord0.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 2.00000000E+00*_ps.y);
_OUT._t6 = gl_MultiTexCoord0.xyyy + vec4(-2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_OUT._t7 = gl_MultiTexCoord0.xyyy + vec4(2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_ret_0._position1 = _r0006;
_ret_0._color1 = COLOR;
_ret_0._texCoord1 = gl_MultiTexCoord0.xy;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
_ret_0._t4 = _OUT._t4;
_ret_0._t5 = _OUT._t5;
_ret_0._t6 = _OUT._t6;
_ret_0._t7 = _OUT._t7;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = gl_MultiTexCoord0.xy;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
TEX4 = _OUT._t4;
TEX5 = _OUT._t5;
TEX6 = _OUT._t6;
TEX7 = _OUT._t7;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord1;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
TEX5 = _ret_0._t5;
TEX6 = _ret_0._t6;
TEX7 = _ret_0._t7;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
vec4 _ret_0;
float _TMP38;
float _TMP37;
float _TMP36;
vec3 _TMP35;
vec3 _TMP34;
vec3 _TMP33;
vec3 _TMP32;
vec4 _TMP31;
vec4 _TMP30;
bvec4 _TMP27;
bvec4 _TMP24;
vec4 _TMP45;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0057;
vec4 _r0101;
vec4 _r0111;
vec4 _r0121;
vec4 _r0131;
vec4 _r0141;
vec4 _r0151;
vec4 _x0161;
vec4 _TMP162;
vec4 _x0169;
vec4 _TMP170;
vec4 _x0177;
vec4 _TMP178;
vec4 _x0185;
vec4 _TMP186;
vec4 _TMP194;
vec4 _a0197;
vec4 _TMP198;
vec4 _a0201;
vec4 _TMP202;
vec4 _a0205;
vec4 _TMP206;
vec4 _a0209;
vec4 _TMP210;
vec4 _a0213;
vec4 _TMP216;
vec4 _a0219;
vec4 _TMP220;
vec4 _a0223;
vec4 _TMP224;
vec4 _a0227;
vec4 _TMP228;
vec4 _a0231;
vec4 _TMP232;
vec4 _a0235;
vec4 _TMP236;
vec4 _a0239;
vec4 _TMP240;
vec4 _a0243;
vec4 _TMP246;
vec4 _a0249;
vec4 _TMP250;
vec4 _a0253;
vec4 _TMP254;
vec4 _a0257;
vec4 _TMP260;
vec4 _a0263;
vec4 _TMP264;
vec4 _a0267;
vec4 _TMP268;
vec4 _a0271;
float _t0279;
float _t0283;
float _t0287;
float _t0291;
vec3 _df0295;
vec3 _a0297;
vec3 _df0299;
vec3 _a0301;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bvec4 _edri;
bvec4 _edr;
bvec4 _edr_left;
bvec4 _edr_up;
bvec4 _px;
bvec4 _interp_restriction_lv0;
bvec4 _interp_restriction_lv2_left;
bvec4 _interp_restriction_lv2_up;
vec4 _fx;
vec4 _fx_left;
vec4 _fx_up;
vec2 _fp;
vec4 _fx45i;
vec4 _fx45;
vec4 _fx30;
vec4 _fx60;
vec4 _wd1;
vec4 _wd2;
vec4 _maximos;
vec3 _res1;
vec3 _res2;
vec3 _res;
_x0057 = TEX0.xy*TextureSize;
_fp = fract(_x0057);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yw);
_TMP2 = COMPAT_TEXTURE(Texture, TEX1.zw);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP4 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX2.zw);
_TMP6 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.zw);
_TMP9 = COMPAT_TEXTURE(Texture, TEX4.xw);
_TMP10 = COMPAT_TEXTURE(Texture, TEX4.yw);
_TMP11 = COMPAT_TEXTURE(Texture, TEX4.zw);
_TMP12 = COMPAT_TEXTURE(Texture, TEX5.xw);
_TMP13 = COMPAT_TEXTURE(Texture, TEX5.yw);
_TMP14 = COMPAT_TEXTURE(Texture, TEX5.zw);
_TMP15 = COMPAT_TEXTURE(Texture, TEX6.xy);
_TMP16 = COMPAT_TEXTURE(Texture, TEX6.xz);
_TMP17 = COMPAT_TEXTURE(Texture, TEX6.xw);
_TMP18 = COMPAT_TEXTURE(Texture, TEX7.xy);
_TMP19 = COMPAT_TEXTURE(Texture, TEX7.xz);
_TMP20 = COMPAT_TEXTURE(Texture, TEX7.xw);
_r0101.x = dot(_TMP4.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0101.y = dot(_TMP6.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0101.z = dot(_TMP10.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0101.w = dot(_TMP8.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0111.x = dot(_TMP5.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0111.y = dot(_TMP3.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0111.z = dot(_TMP9.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0111.w = dot(_TMP11.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0121.x = dot(_TMP7.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0121.y = dot(_TMP7.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0121.z = dot(_TMP7.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0121.w = dot(_TMP7.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0131.x = dot(_TMP20.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0131.y = dot(_TMP2.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0131.z = dot(_TMP15.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0131.w = dot(_TMP12.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0141.x = dot(_TMP14.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0141.y = dot(_TMP18.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0141.z = dot(_TMP0.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0141.w = dot(_TMP17.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0151.x = dot(_TMP13.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0151.y = dot(_TMP19.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0151.z = dot(_TMP1.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_r0151.w = dot(_TMP16.xyz, vec3( 1.02047997E+01, 3.43296013E+01, 3.46560001E+00));
_fx = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x;
_fx_left = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x;
_fx_up = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x;
_interp_restriction_lv0 = bvec4(_r0121.x != _r0101.w && _r0121.x != _r0101.z, _r0121.y != _r0101.x && _r0121.y != _r0101.w, _r0121.z != _r0101.y && _r0121.z != _r0101.x, _r0121.w != _r0101.z && _r0121.w != _r0101.y);
_interp_restriction_lv2_left = bvec4(_r0121.x != _r0111.z && _r0101.y != _r0111.z, _r0121.y != _r0111.w && _r0101.z != _r0111.w, _r0121.z != _r0111.x && _r0101.w != _r0111.x, _r0121.w != _r0111.y && _r0101.x != _r0111.y);
_interp_restriction_lv2_up = bvec4(_r0121.x != _r0111.x && _r0101.x != _r0111.x, _r0121.y != _r0111.y && _r0101.y != _r0111.y, _r0121.z != _r0111.z && _r0101.z != _r0111.z, _r0121.w != _r0111.w && _r0101.w != _r0111.w);
_x0161 = (((_fx + vec4( 2.50000000E-01, 2.50000000E-01, 2.50000000E-01, 2.50000000E-01)) - vec4( 1.50000000E+00, 5.00000000E-01, -5.00000000E-01, 5.00000000E-01)) - vec4( 2.50000000E-01, 2.50000000E-01, 2.50000000E-01, 2.50000000E-01))/vec4( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01, 5.00000000E-01);
_TMP45 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0161);
_TMP162 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP45);
_x0169 = ((_fx + vec4( 2.50000000E-01, 2.50000000E-01, 2.50000000E-01, 2.50000000E-01)) - vec4( 1.50000000E+00, 5.00000000E-01, -5.00000000E-01, 5.00000000E-01))/vec4( 5.00000000E-01, 5.00000000E-01, 5.00000000E-01, 5.00000000E-01);
_TMP45 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0169);
_TMP170 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP45);
_x0177 = ((_fx_left + vec4( 1.25000000E-01, 2.50000000E-01, 1.25000000E-01, 2.50000000E-01)) - vec4( 1.00000000E+00, 1.00000000E+00, -5.00000000E-01, 0.00000000E+00))/vec4( 2.50000000E-01, 5.00000000E-01, 2.50000000E-01, 5.00000000E-01);
_TMP45 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0177);
_TMP178 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP45);
_x0185 = ((_fx_up + vec4( 2.50000000E-01, 1.25000000E-01, 2.50000000E-01, 1.25000000E-01)) - vec4( 2.00000000E+00, 0.00000000E+00, -1.00000000E+00, 5.00000000E-01))/vec4( 5.00000000E-01, 2.50000000E-01, 5.00000000E-01, 2.50000000E-01);
_TMP45 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0185);
_TMP186 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP45);
_a0197 = _r0121 - _r0111;
_TMP194 = abs(_a0197);
_a0201 = _r0121 - _r0111.zwxy;
_TMP198 = abs(_a0201);
_a0205 = _r0111.wxyz - _r0151;
_TMP202 = abs(_a0205);
_a0209 = _r0111.wxyz - _r0151.yzwx;
_TMP206 = abs(_a0209);
_a0213 = _r0101.zwxy - _r0101.wxyz;
_TMP210 = abs(_a0213);
_wd1 = _TMP194 + _TMP198 + _TMP202 + _TMP206 + 4.00000000E+00*_TMP210;
_a0219 = _r0101.zwxy - _r0101.yzwx;
_TMP216 = abs(_a0219);
_a0223 = _r0101.zwxy - _r0141;
_TMP220 = abs(_a0223);
_a0227 = _r0101.wxyz - _r0131;
_TMP224 = abs(_a0227);
_a0231 = _r0101.wxyz - _r0101;
_TMP228 = abs(_a0231);
_a0235 = _r0121 - _r0111.wxyz;
_TMP232 = abs(_a0235);
_wd2 = _TMP216 + _TMP220 + _TMP224 + _TMP228 + 4.00000000E+00*_TMP232;
_edri = bvec4(_wd1.x <= _wd2.x && _interp_restriction_lv0.x, _wd1.y <= _wd2.y && _interp_restriction_lv0.y, _wd1.z <= _wd2.z && _interp_restriction_lv0.z, _wd1.w <= _wd2.w && _interp_restriction_lv0.w);
_edr = bvec4(_wd1.x < _wd2.x && _interp_restriction_lv0.x, _wd1.y < _wd2.y && _interp_restriction_lv0.y, _wd1.z < _wd2.z && _interp_restriction_lv0.z, _wd1.w < _wd2.w && _interp_restriction_lv0.w);
_edr = bvec4(_edr.x && (!_edri.y || !_edri.w), _edr.y && (!_edri.z || !_edri.x), _edr.z && (!_edri.w || !_edri.y), _edr.w && (!_edri.x || !_edri.z));
_a0239 = _r0101.wxyz - _r0111.zwxy;
_TMP236 = abs(_a0239);
_a0243 = _r0101.zwxy - _r0111;
_TMP240 = abs(_a0243);
_a0249 = _r0121 - _r0111;
_TMP246 = abs(_a0249);
_TMP24 = bvec4(_TMP246.x < 2.50000000E+01, _TMP246.y < 2.50000000E+01, _TMP246.z < 2.50000000E+01, _TMP246.w < 2.50000000E+01);
_edr_left = bvec4((2.00000000E+00*_TMP236).x <= _TMP240.x && _interp_restriction_lv2_left.x && _edr.x && !_edri.y && _TMP24.x, (2.00000000E+00*_TMP236).y <= _TMP240.y && _interp_restriction_lv2_left.y && _edr.y && !_edri.z && _TMP24.y, (2.00000000E+00*_TMP236).z <= _TMP240.z && _interp_restriction_lv2_left.z && _edr.z && !_edri.w && _TMP24.z, (2.00000000E+00*_TMP236).w <= _TMP240.w && _interp_restriction_lv2_left.w && _edr.w && !_edri.x && _TMP24.w);
_a0253 = _r0101.wxyz - _r0111.zwxy;
_TMP250 = abs(_a0253);
_a0257 = _r0101.zwxy - _r0111;
_TMP254 = abs(_a0257);
_a0263 = _r0121 - _r0111.zwxy;
_TMP260 = abs(_a0263);
_TMP27 = bvec4(_TMP260.x < 2.50000000E+01, _TMP260.y < 2.50000000E+01, _TMP260.z < 2.50000000E+01, _TMP260.w < 2.50000000E+01);
_edr_up = bvec4(_TMP250.x >= (2.00000000E+00*_TMP254).x && _interp_restriction_lv2_up.x && _edr.x && !_edri.w && _TMP27.x, _TMP250.y >= (2.00000000E+00*_TMP254).y && _interp_restriction_lv2_up.y && _edr.y && !_edri.x && _TMP27.y, _TMP250.z >= (2.00000000E+00*_TMP254).z && _interp_restriction_lv2_up.z && _edr.z && !_edri.y && _TMP27.z, _TMP250.w >= (2.00000000E+00*_TMP254).w && _interp_restriction_lv2_up.w && _edr.w && !_edri.z && _TMP27.w);
_fx45 = vec4(float(_edr.x), float(_edr.y), float(_edr.z), float(_edr.w))*_TMP170;
_fx30 = vec4(float(_edr_left.x), float(_edr_left.y), float(_edr_left.z), float(_edr_left.w))*_TMP178;
_fx60 = vec4(float(_edr_up.x), float(_edr_up.y), float(_edr_up.z), float(_edr_up.w))*_TMP186;
_fx45i = vec4(float(_edri.x), float(_edri.y), float(_edri.z), float(_edri.w))*_TMP162;
_a0267 = _r0121 - _r0101.wxyz;
_TMP264 = abs(_a0267);
_a0271 = _r0121 - _r0101.zwxy;
_TMP268 = abs(_a0271);
_px = bvec4(_TMP264.x <= _TMP268.x, _TMP264.y <= _TMP268.y, _TMP264.z <= _TMP268.z, _TMP264.w <= _TMP268.w);
_TMP30 = max(_fx30, _fx60);
_TMP31 = max(_fx45, _fx45i);
_maximos = max(_TMP30, _TMP31);
_t0279 = float(_px.x);
_TMP32 = _TMP10.xyz + _t0279*(_TMP8.xyz - _TMP10.xyz);
_res1 = _TMP7.xyz + _maximos.x*(_TMP32 - _TMP7.xyz);
_t0283 = float(_px.z);
_TMP33 = _TMP4.xyz + _t0283*(_TMP6.xyz - _TMP4.xyz);
_res1 = _res1 + _maximos.z*(_TMP33 - _res1);
_t0287 = float(_px.y);
_TMP34 = _TMP8.xyz + _t0287*(_TMP4.xyz - _TMP8.xyz);
_res2 = _TMP7.xyz + _maximos.y*(_TMP34 - _TMP7.xyz);
_t0291 = float(_px.w);
_TMP35 = _TMP6.xyz + _t0291*(_TMP10.xyz - _TMP6.xyz);
_res2 = _res2 + _maximos.w*(_TMP35 - _res2);
_a0297 = _TMP7.xyz - _res1;
_df0295 = abs(_a0297);
_TMP36 = _df0295.x + _df0295.y + _df0295.z;
_a0301 = _TMP7.xyz - _res2;
_df0299 = abs(_a0301);
_TMP37 = _df0299.x + _df0299.y + _df0299.z;
_TMP38 = float((_TMP37 >= _TMP36));
_res = _res1 + _TMP38*(_res2 - _res1);
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,506 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord2;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0006;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -2.00000000E+00*_ps.y);
_OUT._t2 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -_ps.y);
_OUT._t3 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 0.00000000E+00);
_OUT._t4 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, _ps.y);
_OUT._t5 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 2.00000000E+00*_ps.y);
_OUT._t6 = _texCoord.xyyy + vec4(-2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_OUT._t7 = _texCoord.xyyy + vec4(2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_ret_0._position1 = _r0006;
_ret_0._color1 = COLOR;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
_ret_0._t4 = _OUT._t4;
_ret_0._t5 = _OUT._t5;
_ret_0._t6 = _OUT._t6;
_ret_0._t7 = _OUT._t7;
gl_Position = _r0006;
COL0 = COLOR;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
TEX4 = _OUT._t4;
TEX5 = _OUT._t5;
TEX6 = _OUT._t6;
TEX7 = _OUT._t7;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
TEX5 = _ret_0._t5;
TEX6 = _ret_0._t6;
TEX7 = _ret_0._t7;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
vec4 _ret_0;
float _TMP50;
vec3 _TMP41;
vec3 _TMP43;
vec3 _TMP45;
vec3 _TMP47;
vec3 _TMP48;
vec3 _TMP46;
vec3 _TMP44;
vec3 _TMP42;
vec3 _TMP33;
vec3 _TMP35;
vec3 _TMP37;
vec3 _TMP39;
vec3 _TMP40;
vec3 _TMP38;
vec3 _TMP36;
vec3 _TMP34;
bvec4 _TMP30;
bvec4 _TMP29;
bvec4 _TMP28;
bvec4 _TMP25;
bvec4 _TMP22;
bvec4 _TMP21;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0070;
vec4 _r0114;
vec4 _r0124;
vec4 _r0134;
vec4 _r0144;
vec4 _r0154;
vec4 _r0164;
vec4 _TMP175;
vec4 _a0178;
vec4 _TMP181;
vec4 _a0184;
vec4 _TMP187;
vec4 _a0190;
vec4 _TMP191;
vec4 _a0194;
vec4 _TMP195;
vec4 _a0198;
vec4 _TMP199;
vec4 _a0202;
vec4 _TMP203;
vec4 _a0206;
vec4 _TMP209;
vec4 _a0212;
vec4 _TMP213;
vec4 _a0216;
vec4 _TMP217;
vec4 _a0220;
vec4 _TMP221;
vec4 _a0224;
vec4 _TMP225;
vec4 _a0228;
vec4 _TMP229;
vec4 _a0232;
vec4 _TMP233;
vec4 _a0236;
vec4 _TMP239;
vec4 _a0242;
vec4 _TMP243;
vec4 _a0246;
vec4 _TMP247;
vec4 _a0250;
vec4 _TMP253;
vec4 _a0256;
vec4 _TMP259;
vec4 _a0262;
vec4 _TMP265;
vec4 _a0268;
vec4 _TMP269;
vec4 _a0272;
vec4 _TMP273;
vec4 _a0276;
vec2 _r0278;
vec2 _a0284;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bvec4 _edri;
bvec4 _edr;
bvec4 _edr_left;
bvec4 _edr_up;
bvec4 _px;
bvec4 _interp_restriction_lv1;
bvec4 _interp_restriction_lv2_left;
bvec4 _interp_restriction_lv2_up;
bvec4 _interp_restriction_lv3_left;
bvec4 _interp_restriction_lv3_up;
bvec4 _nc;
bvec4 _fx;
bvec4 _fx_left;
bvec4 _fx_up;
bvec4 _fx3_left;
bvec4 _fx3_up;
vec2 _fp;
vec4 _wd1;
vec4 _wd2;
vec2 _df12;
vec3 _res;
_x0070 = TEX0.xy*TextureSize;
_fp = fract(_x0070);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yw);
_TMP2 = COMPAT_TEXTURE(Texture, TEX1.zw);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP4 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX2.zw);
_TMP6 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.zw);
_TMP9 = COMPAT_TEXTURE(Texture, TEX4.xw);
_TMP10 = COMPAT_TEXTURE(Texture, TEX4.yw);
_TMP11 = COMPAT_TEXTURE(Texture, TEX4.zw);
_TMP12 = COMPAT_TEXTURE(Texture, TEX5.xw);
_TMP13 = COMPAT_TEXTURE(Texture, TEX5.yw);
_TMP14 = COMPAT_TEXTURE(Texture, TEX5.zw);
_TMP15 = COMPAT_TEXTURE(Texture, TEX6.xy);
_TMP16 = COMPAT_TEXTURE(Texture, TEX6.xz);
_TMP17 = COMPAT_TEXTURE(Texture, TEX6.xw);
_TMP18 = COMPAT_TEXTURE(Texture, TEX7.xy);
_TMP19 = COMPAT_TEXTURE(Texture, TEX7.xz);
_TMP20 = COMPAT_TEXTURE(Texture, TEX7.xw);
_r0114.x = dot(_TMP4.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0114.y = dot(_TMP6.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0114.z = dot(_TMP10.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0114.w = dot(_TMP8.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0124.x = dot(_TMP5.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0124.y = dot(_TMP3.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0124.z = dot(_TMP9.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0124.w = dot(_TMP11.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0134.x = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0134.y = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0134.z = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0134.w = dot(_TMP7.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0144.x = dot(_TMP20.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0144.y = dot(_TMP2.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0144.z = dot(_TMP15.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0144.w = dot(_TMP12.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0154.x = dot(_TMP14.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0154.y = dot(_TMP18.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0154.z = dot(_TMP0.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0154.w = dot(_TMP17.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0164.x = dot(_TMP13.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0164.y = dot(_TMP19.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0164.z = dot(_TMP1.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0164.w = dot(_TMP16.xyz, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_fx = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).x > 1.50000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).y > 5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).z > -5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x).w > 5.00000000E-01);
_fx_left = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).x > 1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).y > 1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).z > -5.00000000E-01, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x).w > 0.00000000E+00);
_fx_up = bvec4((vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).x > 2.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).y > 0.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).z > -1.00000000E+00, (vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x).w > 5.00000000E-01);
_fx3_left = bvec4((vec4( 6.00000000E+00, -2.00000000E+00, -6.00000000E+00, 2.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 6.00000000E+00, -2.00000000E+00, -6.00000000E+00)*_fp.x).x > 5.00000000E+00, (vec4( 6.00000000E+00, -2.00000000E+00, -6.00000000E+00, 2.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 6.00000000E+00, -2.00000000E+00, -6.00000000E+00)*_fp.x).y > 3.00000000E+00, (vec4( 6.00000000E+00, -2.00000000E+00, -6.00000000E+00, 2.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 6.00000000E+00, -2.00000000E+00, -6.00000000E+00)*_fp.x).z > -3.00000000E+00, (vec4( 6.00000000E+00, -2.00000000E+00, -6.00000000E+00, 2.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 6.00000000E+00, -2.00000000E+00, -6.00000000E+00)*_fp.x).w > -1.00000000E+00);
_fx3_up = bvec4((vec4( 2.00000000E+00, -6.00000000E+00, -2.00000000E+00, 6.00000000E+00)*_fp.y + vec4( 6.00000000E+00, 2.00000000E+00, -6.00000000E+00, -2.00000000E+00)*_fp.x).x > 5.00000000E+00, (vec4( 2.00000000E+00, -6.00000000E+00, -2.00000000E+00, 6.00000000E+00)*_fp.y + vec4( 6.00000000E+00, 2.00000000E+00, -6.00000000E+00, -2.00000000E+00)*_fp.x).y > -1.00000000E+00, (vec4( 2.00000000E+00, -6.00000000E+00, -2.00000000E+00, 6.00000000E+00)*_fp.y + vec4( 6.00000000E+00, 2.00000000E+00, -6.00000000E+00, -2.00000000E+00)*_fp.x).z > -3.00000000E+00, (vec4( 2.00000000E+00, -6.00000000E+00, -2.00000000E+00, 6.00000000E+00)*_fp.y + vec4( 6.00000000E+00, 2.00000000E+00, -6.00000000E+00, -2.00000000E+00)*_fp.x).w > 3.00000000E+00);
_interp_restriction_lv1 = bvec4(_r0134.x != _r0114.w && _r0134.x != _r0114.z, _r0134.y != _r0114.x && _r0134.y != _r0114.w, _r0134.z != _r0114.y && _r0134.z != _r0114.x, _r0134.w != _r0114.z && _r0134.w != _r0114.y);
_interp_restriction_lv2_left = bvec4(_r0134.x != _r0124.z && _r0114.y != _r0124.z, _r0134.y != _r0124.w && _r0114.z != _r0124.w, _r0134.z != _r0124.x && _r0114.w != _r0124.x, _r0134.w != _r0124.y && _r0114.x != _r0124.y);
_interp_restriction_lv2_up = bvec4(_r0134.x != _r0124.x && _r0114.x != _r0124.x, _r0134.y != _r0124.y && _r0114.y != _r0124.y, _r0134.z != _r0124.z && _r0114.z != _r0124.z, _r0134.w != _r0124.w && _r0114.w != _r0124.w);
_a0178 = _r0124.zwxy - _r0154.wxyz;
_TMP175 = abs(_a0178);
_TMP21 = bvec4(_TMP175.x < 9.99999978E-03, _TMP175.y < 9.99999978E-03, _TMP175.z < 9.99999978E-03, _TMP175.w < 9.99999978E-03);
_interp_restriction_lv3_left = bvec4(_TMP21.x && _r0164.w != _r0154.w, _TMP21.y && _r0164.x != _r0154.x, _TMP21.z && _r0164.y != _r0154.y, _TMP21.w && _r0164.z != _r0154.z);
_a0184 = _r0124 - _r0144.yzwx;
_TMP181 = abs(_a0184);
_TMP22 = bvec4(_TMP181.x < 9.99999978E-03, _TMP181.y < 9.99999978E-03, _TMP181.z < 9.99999978E-03, _TMP181.w < 9.99999978E-03);
_interp_restriction_lv3_up = bvec4(_TMP22.x && _r0164.z != _r0144.y, _TMP22.y && _r0164.w != _r0144.z, _TMP22.z && _r0164.x != _r0144.w, _TMP22.w && _r0164.y != _r0144.x);
_a0190 = _r0134 - _r0124;
_TMP187 = abs(_a0190);
_a0194 = _r0134 - _r0124.zwxy;
_TMP191 = abs(_a0194);
_a0198 = _r0124.wxyz - _r0164;
_TMP195 = abs(_a0198);
_a0202 = _r0124.wxyz - _r0164.yzwx;
_TMP199 = abs(_a0202);
_a0206 = _r0114.zwxy - _r0114.wxyz;
_TMP203 = abs(_a0206);
_wd1 = _TMP187 + _TMP191 + _TMP195 + _TMP199 + 4.00000000E+00*_TMP203;
_a0212 = _r0114.zwxy - _r0114.yzwx;
_TMP209 = abs(_a0212);
_a0216 = _r0114.zwxy - _r0154;
_TMP213 = abs(_a0216);
_a0220 = _r0114.wxyz - _r0144;
_TMP217 = abs(_a0220);
_a0224 = _r0114.wxyz - _r0114;
_TMP221 = abs(_a0224);
_a0228 = _r0134 - _r0124.wxyz;
_TMP225 = abs(_a0228);
_wd2 = _TMP209 + _TMP213 + _TMP217 + _TMP221 + 4.00000000E+00*_TMP225;
_edri = bvec4(_wd1.x <= _wd2.x && _interp_restriction_lv1.x, _wd1.y <= _wd2.y && _interp_restriction_lv1.y, _wd1.z <= _wd2.z && _interp_restriction_lv1.z, _wd1.w <= _wd2.w && _interp_restriction_lv1.w);
_edr = bvec4(_wd1.x < _wd2.x && _interp_restriction_lv1.x, _wd1.y < _wd2.y && _interp_restriction_lv1.y, _wd1.z < _wd2.z && _interp_restriction_lv1.z, _wd1.w < _wd2.w && _interp_restriction_lv1.w);
_edr = bvec4(_edr.x && (!_edri.y || !_edri.w), _edr.y && (!_edri.z || !_edri.x), _edr.z && (!_edri.w || !_edri.y), _edr.w && (!_edri.x || !_edri.z));
_a0232 = _r0114.wxyz - _r0124.zwxy;
_TMP229 = abs(_a0232);
_a0236 = _r0114.zwxy - _r0124;
_TMP233 = abs(_a0236);
_a0242 = _r0134 - _r0124;
_TMP239 = abs(_a0242);
_TMP25 = bvec4(_TMP239.x < 6.00000024E-01, _TMP239.y < 6.00000024E-01, _TMP239.z < 6.00000024E-01, _TMP239.w < 6.00000024E-01);
_edr_left = bvec4((2.00000000E+00*_TMP229).x <= _TMP233.x && _interp_restriction_lv2_left.x && _edr.x && !_edri.y && _TMP25.x, (2.00000000E+00*_TMP229).y <= _TMP233.y && _interp_restriction_lv2_left.y && _edr.y && !_edri.z && _TMP25.y, (2.00000000E+00*_TMP229).z <= _TMP233.z && _interp_restriction_lv2_left.z && _edr.z && !_edri.w && _TMP25.z, (2.00000000E+00*_TMP229).w <= _TMP233.w && _interp_restriction_lv2_left.w && _edr.w && !_edri.x && _TMP25.w);
_a0246 = _r0114.wxyz - _r0124.zwxy;
_TMP243 = abs(_a0246);
_a0250 = _r0114.zwxy - _r0124;
_TMP247 = abs(_a0250);
_a0256 = _r0134 - _r0124.zwxy;
_TMP253 = abs(_a0256);
_TMP28 = bvec4(_TMP253.x < 6.00000024E-01, _TMP253.y < 6.00000024E-01, _TMP253.z < 6.00000024E-01, _TMP253.w < 6.00000024E-01);
_edr_up = bvec4(_TMP243.x >= (2.00000000E+00*_TMP247).x && _interp_restriction_lv2_up.x && _edr.x && !_edri.w && _TMP28.x, _TMP243.y >= (2.00000000E+00*_TMP247).y && _interp_restriction_lv2_up.y && _edr.y && !_edri.x && _TMP28.y, _TMP243.z >= (2.00000000E+00*_TMP247).z && _interp_restriction_lv2_up.z && _edr.z && !_edri.y && _TMP28.z, _TMP243.w >= (2.00000000E+00*_TMP247).w && _interp_restriction_lv2_up.w && _edr.w && !_edri.z && _TMP28.w);
_a0262 = _r0134 - _r0154.yzwx;
_TMP259 = abs(_a0262);
_TMP29 = bvec4(_TMP259.x < 6.00000024E-01, _TMP259.y < 6.00000024E-01, _TMP259.z < 6.00000024E-01, _TMP259.w < 6.00000024E-01);
_a0268 = _r0134 - _r0144.wxyz;
_TMP265 = abs(_a0268);
_TMP30 = bvec4(_TMP265.x < 6.00000024E-01, _TMP265.y < 6.00000024E-01, _TMP265.z < 6.00000024E-01, _TMP265.w < 6.00000024E-01);
_nc = bvec4(_edr.x && (_fx.x || _edr_left.x && (_fx_left.x || _interp_restriction_lv3_left.x && _fx3_left.x && _TMP29.x) || _edr_up.x && (_fx_up.x || _interp_restriction_lv3_up.x && _fx3_up.x && _TMP30.x)), _edr.y && (_fx.y || _edr_left.y && (_fx_left.y || _interp_restriction_lv3_left.y && _fx3_left.y && _TMP29.y) || _edr_up.y && (_fx_up.y || _interp_restriction_lv3_up.y && _fx3_up.y && _TMP30.y)), _edr.z && (_fx.z || _edr_left.z && (_fx_left.z || _interp_restriction_lv3_left.z && _fx3_left.z && _TMP29.z) || _edr_up.z && (_fx_up.z || _interp_restriction_lv3_up.z && _fx3_up.z && _TMP30.z)), _edr.w && (_fx.w || _edr_left.w && (_fx_left.w || _interp_restriction_lv3_left.w && _fx3_left.w && _TMP29.w) || _edr_up.w && (_fx_up.w || _interp_restriction_lv3_up.w && _fx3_up.w && _TMP30.w)));
_a0272 = _r0134 - _r0114.wxyz;
_TMP269 = abs(_a0272);
_a0276 = _r0134 - _r0114.zwxy;
_TMP273 = abs(_a0276);
_px = bvec4(_TMP269.x <= _TMP273.x, _TMP269.y <= _TMP273.y, _TMP269.z <= _TMP273.z, _TMP269.w <= _TMP273.w);
if (_nc.x) {
if (_px.x) {
_TMP34 = _TMP8.xyz;
} else {
_TMP34 = _TMP10.xyz;
}
_TMP33 = _TMP34;
} else {
if (_nc.y) {
if (_px.y) {
_TMP36 = _TMP4.xyz;
} else {
_TMP36 = _TMP8.xyz;
}
_TMP35 = _TMP36;
} else {
if (_nc.z) {
if (_px.z) {
_TMP38 = _TMP6.xyz;
} else {
_TMP38 = _TMP4.xyz;
}
_TMP37 = _TMP38;
} else {
if (_nc.w) {
if (_px.w) {
_TMP40 = _TMP10.xyz;
} else {
_TMP40 = _TMP6.xyz;
}
_TMP39 = _TMP40;
} else {
_TMP39 = _TMP7.xyz;
}
_TMP37 = _TMP39;
}
_TMP35 = _TMP37;
}
_TMP33 = _TMP35;
}
if (_nc.w) {
if (_px.w) {
_TMP42 = _TMP10.xyz;
} else {
_TMP42 = _TMP6.xyz;
}
_TMP41 = _TMP42;
} else {
if (_nc.z) {
if (_px.z) {
_TMP44 = _TMP6.xyz;
} else {
_TMP44 = _TMP4.xyz;
}
_TMP43 = _TMP44;
} else {
if (_nc.y) {
if (_px.y) {
_TMP46 = _TMP4.xyz;
} else {
_TMP46 = _TMP8.xyz;
}
_TMP45 = _TMP46;
} else {
if (_nc.x) {
if (_px.x) {
_TMP48 = _TMP8.xyz;
} else {
_TMP48 = _TMP10.xyz;
}
_TMP47 = _TMP48;
} else {
_TMP47 = _TMP7.xyz;
}
_TMP45 = _TMP47;
}
_TMP43 = _TMP45;
}
_TMP41 = _TMP43;
}
_r0278.x = dot(_TMP33, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_r0278.y = dot(_TMP41, vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02));
_a0284 = _r0278 - _r0134.xy;
_df12 = abs(_a0284);
_TMP50 = float((_df12.y >= _df12.x));
_res = _TMP33 + _TMP50*(_TMP41 - _TMP33);
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif

View file

@ -0,0 +1,624 @@
// GLSL shader autogenerated by cg2glsl.py.
#if defined(VERTEX)
#if __VERSION__ >= 130
#define COMPAT_VARYING out
#define COMPAT_ATTRIBUTE in
#define COMPAT_TEXTURE texture
#else
#define COMPAT_VARYING varying
#define COMPAT_ATTRIBUTE attribute
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord2;
COMPAT_VARYING vec4 _color1;
COMPAT_VARYING vec4 _position1;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _position1;
vec4 _color1;
vec2 _texCoord2;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
out_vertex _ret_0;
input_dummy _IN1;
vec4 _r0007;
COMPAT_ATTRIBUTE vec4 gl_Vertex;
COMPAT_ATTRIBUTE vec4 COLOR;
COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
COMPAT_VARYING vec4 COL0;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
out_vertex _OUT;
vec2 _ps;
vec2 _texCoord;
_r0007 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
_r0007 = _r0007 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
_r0007 = _r0007 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
_r0007 = _r0007 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
_ps = vec2(1.00000000E+00/TextureSize.x, 1.00000000E+00/TextureSize.y);
_texCoord = gl_MultiTexCoord0.xy + vec2( 1.00000001E-07, 1.00000001E-07);
_OUT._t1 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -2.00000000E+00*_ps.y);
_OUT._t2 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, -_ps.y);
_OUT._t3 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 0.00000000E+00);
_OUT._t4 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, _ps.y);
_OUT._t5 = _texCoord.xxxy + vec4(-_ps.x, 0.00000000E+00, _ps.x, 2.00000000E+00*_ps.y);
_OUT._t6 = _texCoord.xyyy + vec4(-2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_OUT._t7 = _texCoord.xyyy + vec4(2.00000000E+00*_ps.x, -_ps.y, 0.00000000E+00, _ps.y);
_ret_0._position1 = _r0007;
_ret_0._color1 = COLOR;
_ret_0._texCoord2 = _texCoord;
_ret_0._t1 = _OUT._t1;
_ret_0._t2 = _OUT._t2;
_ret_0._t3 = _OUT._t3;
_ret_0._t4 = _OUT._t4;
_ret_0._t5 = _OUT._t5;
_ret_0._t6 = _OUT._t6;
_ret_0._t7 = _OUT._t7;
gl_Position = _r0007;
COL0 = COLOR;
TEX0.xy = _texCoord;
TEX1 = _OUT._t1;
TEX2 = _OUT._t2;
TEX3 = _OUT._t3;
TEX4 = _OUT._t4;
TEX5 = _OUT._t5;
TEX6 = _OUT._t6;
TEX7 = _OUT._t7;
return;
COL0 = _ret_0._color1;
TEX0.xy = _ret_0._texCoord2;
TEX1 = _ret_0._t1;
TEX2 = _ret_0._t2;
TEX3 = _ret_0._t3;
TEX4 = _ret_0._t4;
TEX5 = _ret_0._t5;
TEX6 = _ret_0._t6;
TEX7 = _ret_0._t7;
}
#elif defined(FRAGMENT)
#if __VERSION__ >= 130
#define COMPAT_VARYING in
#define COMPAT_TEXTURE texture
out vec4 FragColor;
#else
#define COMPAT_VARYING varying
#define FragColor gl_FragColor
#define COMPAT_TEXTURE texture2D
#endif
#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#define COMPAT_PRECISION mediump
#else
#define COMPAT_PRECISION
#endif
COMPAT_VARYING vec4 _t7;
COMPAT_VARYING vec4 _t6;
COMPAT_VARYING vec4 _t5;
COMPAT_VARYING vec4 _t4;
COMPAT_VARYING vec4 _t3;
COMPAT_VARYING vec4 _t2;
COMPAT_VARYING vec4 _t1;
COMPAT_VARYING vec2 _texCoord;
COMPAT_VARYING vec4 _color;
struct input_dummy {
vec2 _video_size;
vec2 _texture_size;
vec2 _output_dummy_size;
};
struct out_vertex {
vec4 _color;
vec2 _texCoord;
vec4 _t1;
vec4 _t2;
vec4 _t3;
vec4 _t4;
vec4 _t5;
vec4 _t6;
vec4 _t7;
};
vec4 _ret_0;
float _TMP57;
float _TMP56;
float _TMP55;
vec3 _TMP54;
vec3 _TMP53;
vec3 _TMP52;
vec3 _TMP51;
vec3 _TMP50;
vec3 _TMP49;
vec3 _TMP48;
vec3 _TMP47;
vec4 _TMP46;
vec4 _TMP45;
vec4 _TMP44;
vec4 _TMP37;
vec4 _TMP36;
vec4 _TMP65;
bvec4 _TMP35;
bvec4 _TMP34;
bvec4 _TMP33;
bvec4 _TMP32;
bvec4 _TMP31;
bvec4 _TMP30;
bvec4 _TMP29;
bvec4 _TMP28;
bvec4 _TMP27;
bvec4 _TMP26;
bvec4 _TMP25;
bvec4 _TMP24;
bvec4 _TMP23;
bvec4 _TMP22;
bvec4 _TMP21;
vec4 _TMP20;
vec4 _TMP19;
vec4 _TMP18;
vec4 _TMP17;
vec4 _TMP16;
vec4 _TMP15;
vec4 _TMP14;
vec4 _TMP13;
vec4 _TMP12;
vec4 _TMP11;
vec4 _TMP10;
vec4 _TMP9;
vec4 _TMP8;
vec4 _TMP7;
vec4 _TMP6;
vec4 _TMP5;
vec4 _TMP4;
vec4 _TMP3;
vec4 _TMP2;
vec4 _TMP1;
vec4 _TMP0;
uniform sampler2D Texture;
input_dummy _IN1;
vec2 _x0078;
vec4 _r0122;
vec4 _r0132;
vec4 _r0142;
vec4 _r0152;
vec4 _r0162;
vec4 _r0172;
vec4 _TMP183;
vec4 _a0186;
vec4 _TMP189;
vec4 _a0192;
vec4 _TMP195;
vec4 _a0198;
vec4 _TMP201;
vec4 _a0204;
vec4 _TMP207;
vec4 _a0210;
vec4 _TMP213;
vec4 _a0216;
vec4 _TMP219;
vec4 _a0222;
vec4 _TMP225;
vec4 _a0228;
vec4 _TMP231;
vec4 _a0234;
vec4 _TMP237;
vec4 _a0240;
vec4 _TMP243;
vec4 _a0246;
vec4 _TMP249;
vec4 _a0252;
vec4 _TMP255;
vec4 _a0258;
vec4 _TMP261;
vec4 _a0264;
vec4 _TMP267;
vec4 _a0270;
vec4 _x0274;
vec4 _TMP275;
vec4 _x0284;
vec4 _TMP285;
vec4 _x0294;
vec4 _TMP295;
vec4 _x0304;
vec4 _TMP305;
vec4 _x0314;
vec4 _TMP315;
vec4 _TMP323;
vec4 _a0326;
vec4 _TMP327;
vec4 _a0330;
vec4 _TMP331;
vec4 _a0334;
vec4 _TMP335;
vec4 _a0338;
vec4 _TMP339;
vec4 _a0342;
vec4 _TMP345;
vec4 _a0348;
vec4 _TMP349;
vec4 _a0352;
vec4 _TMP353;
vec4 _a0356;
vec4 _TMP357;
vec4 _a0360;
vec4 _TMP361;
vec4 _a0364;
vec4 _TMP365;
vec4 _a0368;
vec4 _TMP369;
vec4 _a0372;
vec4 _TMP373;
vec4 _a0376;
vec4 _TMP377;
vec4 _a0380;
vec4 _TMP381;
vec4 _a0384;
vec4 _TMP385;
vec4 _a0388;
vec3 _df0402;
vec3 _a0404;
vec3 _df0406;
vec3 _a0408;
COMPAT_VARYING vec4 TEX0;
COMPAT_VARYING vec4 TEX1;
COMPAT_VARYING vec4 TEX2;
COMPAT_VARYING vec4 TEX3;
COMPAT_VARYING vec4 TEX4;
COMPAT_VARYING vec4 TEX5;
COMPAT_VARYING vec4 TEX6;
COMPAT_VARYING vec4 TEX7;
uniform int FrameDirection;
uniform int FrameCount;
uniform COMPAT_PRECISION vec2 OutputSize;
uniform COMPAT_PRECISION vec2 TextureSize;
uniform COMPAT_PRECISION vec2 InputSize;
void main()
{
bvec4 _edr;
bvec4 _edr_left;
bvec4 _edr_up;
bvec4 _px;
bvec4 _interp_restriction_lv1;
bvec4 _interp_restriction_lv2_left;
bvec4 _interp_restriction_lv2_up;
bvec4 _interp_restriction_lv3_left;
bvec4 _interp_restriction_lv3_up;
bvec4 _nc;
bvec4 _nc30;
bvec4 _nc60;
bvec4 _nc45;
bvec4 _nc15;
bvec4 _nc75;
vec4 _fx;
vec4 _fx_left;
vec4 _fx_up;
vec4 _fx3_left;
vec4 _fx3_up;
vec3 _res1;
vec3 _res2;
vec3 _pix1;
vec3 _pix2;
float _blend1;
float _blend2;
vec2 _fp;
vec4 _fx45;
vec4 _fx30;
vec4 _fx60;
vec4 _fx15;
vec4 _fx75;
vec4 _final45;
vec4 _final30;
vec4 _final60;
vec4 _final15;
vec4 _final75;
vec4 _maximo;
vec3 _res;
_x0078 = TEX0.xy*TextureSize;
_fp = fract(_x0078);
_TMP0 = COMPAT_TEXTURE(Texture, TEX1.xw);
_TMP1 = COMPAT_TEXTURE(Texture, TEX1.yw);
_TMP2 = COMPAT_TEXTURE(Texture, TEX1.zw);
_TMP3 = COMPAT_TEXTURE(Texture, TEX2.xw);
_TMP4 = COMPAT_TEXTURE(Texture, TEX2.yw);
_TMP5 = COMPAT_TEXTURE(Texture, TEX2.zw);
_TMP6 = COMPAT_TEXTURE(Texture, TEX3.xw);
_TMP7 = COMPAT_TEXTURE(Texture, TEX3.yw);
_TMP8 = COMPAT_TEXTURE(Texture, TEX3.zw);
_TMP9 = COMPAT_TEXTURE(Texture, TEX4.xw);
_TMP10 = COMPAT_TEXTURE(Texture, TEX4.yw);
_TMP11 = COMPAT_TEXTURE(Texture, TEX4.zw);
_TMP12 = COMPAT_TEXTURE(Texture, TEX5.xw);
_TMP13 = COMPAT_TEXTURE(Texture, TEX5.yw);
_TMP14 = COMPAT_TEXTURE(Texture, TEX5.zw);
_TMP15 = COMPAT_TEXTURE(Texture, TEX6.xy);
_TMP16 = COMPAT_TEXTURE(Texture, TEX6.xz);
_TMP17 = COMPAT_TEXTURE(Texture, TEX6.xw);
_TMP18 = COMPAT_TEXTURE(Texture, TEX7.xy);
_TMP19 = COMPAT_TEXTURE(Texture, TEX7.xz);
_TMP20 = COMPAT_TEXTURE(Texture, TEX7.xw);
_r0122.x = dot(_TMP4.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0122.y = dot(_TMP6.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0122.z = dot(_TMP10.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0122.w = dot(_TMP8.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0132.x = dot(_TMP5.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0132.y = dot(_TMP3.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0132.z = dot(_TMP9.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0132.w = dot(_TMP11.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0142.x = dot(_TMP7.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0142.y = dot(_TMP7.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0142.z = dot(_TMP7.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0142.w = dot(_TMP7.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0152.x = dot(_TMP20.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0152.y = dot(_TMP2.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0152.z = dot(_TMP15.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0152.w = dot(_TMP12.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0162.x = dot(_TMP14.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0162.y = dot(_TMP18.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0162.z = dot(_TMP0.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0162.w = dot(_TMP17.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0172.x = dot(_TMP13.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0172.y = dot(_TMP19.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0172.z = dot(_TMP1.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_r0172.w = dot(_TMP16.xyz, vec3( 1.43519993E+01, 2.81760006E+01, 5.47200012E+00));
_fx = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 1.00000000E+00, 1.00000000E+00, -1.00000000E+00, -1.00000000E+00)*_fp.x;
_fx_left = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 5.00000000E-01, 2.00000000E+00, -5.00000000E-01, -2.00000000E+00)*_fp.x;
_fx_up = vec4( 1.00000000E+00, -1.00000000E+00, -1.00000000E+00, 1.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 5.00000000E-01, -2.00000000E+00, -5.00000000E-01)*_fp.x;
_fx3_left = vec4( 6.00000000E+00, -2.00000000E+00, -6.00000000E+00, 2.00000000E+00)*_fp.y + vec4( 2.00000000E+00, 6.00000000E+00, -2.00000000E+00, -6.00000000E+00)*_fp.x;
_fx3_up = vec4( 2.00000000E+00, -6.00000000E+00, -2.00000000E+00, 6.00000000E+00)*_fp.y + vec4( 6.00000000E+00, 2.00000000E+00, -6.00000000E+00, -2.00000000E+00)*_fp.x;
_a0186 = _r0122.wxyz - _r0122;
_TMP183 = abs(_a0186);
_TMP21 = bvec4(_TMP183.x < 1.00000000E+01, _TMP183.y < 1.00000000E+01, _TMP183.z < 1.00000000E+01, _TMP183.w < 1.00000000E+01);
_a0192 = _r0122.wxyz - _r0132;
_TMP189 = abs(_a0192);
_TMP22 = bvec4(_TMP189.x < 1.00000000E+01, _TMP189.y < 1.00000000E+01, _TMP189.z < 1.00000000E+01, _TMP189.w < 1.00000000E+01);
_a0198 = _r0122.zwxy - _r0122.yzwx;
_TMP195 = abs(_a0198);
_TMP23 = bvec4(_TMP195.x < 1.00000000E+01, _TMP195.y < 1.00000000E+01, _TMP195.z < 1.00000000E+01, _TMP195.w < 1.00000000E+01);
_a0204 = _r0122.zwxy - _r0132.zwxy;
_TMP201 = abs(_a0204);
_TMP24 = bvec4(_TMP201.x < 1.00000000E+01, _TMP201.y < 1.00000000E+01, _TMP201.z < 1.00000000E+01, _TMP201.w < 1.00000000E+01);
_a0210 = _r0142 - _r0132.wxyz;
_TMP207 = abs(_a0210);
_TMP25 = bvec4(_TMP207.x < 1.00000000E+01, _TMP207.y < 1.00000000E+01, _TMP207.z < 1.00000000E+01, _TMP207.w < 1.00000000E+01);
_a0216 = _r0122.wxyz - _r0172.yzwx;
_TMP213 = abs(_a0216);
_TMP26 = bvec4(_TMP213.x < 1.00000000E+01, _TMP213.y < 1.00000000E+01, _TMP213.z < 1.00000000E+01, _TMP213.w < 1.00000000E+01);
_a0222 = _r0122.wxyz - _r0152;
_TMP219 = abs(_a0222);
_TMP27 = bvec4(_TMP219.x < 1.00000000E+01, _TMP219.y < 1.00000000E+01, _TMP219.z < 1.00000000E+01, _TMP219.w < 1.00000000E+01);
_a0228 = _r0122.zwxy - _r0172;
_TMP225 = abs(_a0228);
_TMP28 = bvec4(_TMP225.x < 1.00000000E+01, _TMP225.y < 1.00000000E+01, _TMP225.z < 1.00000000E+01, _TMP225.w < 1.00000000E+01);
_a0234 = _r0122.zwxy - _r0162;
_TMP231 = abs(_a0234);
_TMP29 = bvec4(_TMP231.x < 1.00000000E+01, _TMP231.y < 1.00000000E+01, _TMP231.z < 1.00000000E+01, _TMP231.w < 1.00000000E+01);
_a0240 = _r0142 - _r0132.zwxy;
_TMP237 = abs(_a0240);
_TMP30 = bvec4(_TMP237.x < 1.00000000E+01, _TMP237.y < 1.00000000E+01, _TMP237.z < 1.00000000E+01, _TMP237.w < 1.00000000E+01);
_a0246 = _r0142 - _r0132;
_TMP243 = abs(_a0246);
_TMP31 = bvec4(_TMP243.x < 1.00000000E+01, _TMP243.y < 1.00000000E+01, _TMP243.z < 1.00000000E+01, _TMP243.w < 1.00000000E+01);
_interp_restriction_lv1 = bvec4(_r0142.x != _r0122.w && _r0142.x != _r0122.z && (!_TMP21.x && !_TMP22.x || !_TMP23.x && !_TMP24.x || _TMP25.x && (!_TMP26.x && !_TMP27.x || !_TMP28.x && !_TMP29.x) || _TMP30.x || _TMP31.x), _r0142.y != _r0122.x && _r0142.y != _r0122.w && (!_TMP21.y && !_TMP22.y || !_TMP23.y && !_TMP24.y || _TMP25.y && (!_TMP26.y && !_TMP27.y || !_TMP28.y && !_TMP29.y) || _TMP30.y || _TMP31.y), _r0142.z != _r0122.y && _r0142.z != _r0122.x && (!_TMP21.z && !_TMP22.z || !_TMP23.z && !_TMP24.z || _TMP25.z && (!_TMP26.z && !_TMP27.z || !_TMP28.z && !_TMP29.z) || _TMP30.z || _TMP31.z), _r0142.w != _r0122.z && _r0142.w != _r0122.y && (!_TMP21.w && !_TMP22.w || !_TMP23.w && !_TMP24.w || _TMP25.w && (!_TMP26.w && !_TMP27.w || !_TMP28.w && !_TMP29.w) || _TMP30.w || _TMP31.w));
_interp_restriction_lv2_left = bvec4(_r0142.x != _r0132.z && _r0122.y != _r0132.z, _r0142.y != _r0132.w && _r0122.z != _r0132.w, _r0142.z != _r0132.x && _r0122.w != _r0132.x, _r0142.w != _r0132.y && _r0122.x != _r0132.y);
_interp_restriction_lv2_up = bvec4(_r0142.x != _r0132.x && _r0122.x != _r0132.x, _r0142.y != _r0132.y && _r0122.y != _r0132.y, _r0142.z != _r0132.z && _r0122.z != _r0132.z, _r0142.w != _r0132.w && _r0122.w != _r0132.w);
_a0252 = _r0132.zwxy - _r0162.wxyz;
_TMP249 = abs(_a0252);
_TMP32 = bvec4(_TMP249.x < 2.00000000E+00, _TMP249.y < 2.00000000E+00, _TMP249.z < 2.00000000E+00, _TMP249.w < 2.00000000E+00);
_a0258 = _r0172.wxyz - _r0162.wxyz;
_TMP255 = abs(_a0258);
_TMP33 = bvec4(_TMP255.x < 2.00000000E+00, _TMP255.y < 2.00000000E+00, _TMP255.z < 2.00000000E+00, _TMP255.w < 2.00000000E+00);
_interp_restriction_lv3_left = bvec4(_TMP32.x && !_TMP33.x, _TMP32.y && !_TMP33.y, _TMP32.z && !_TMP33.z, _TMP32.w && !_TMP33.w);
_a0264 = _r0132 - _r0152.yzwx;
_TMP261 = abs(_a0264);
_TMP34 = bvec4(_TMP261.x < 2.00000000E+00, _TMP261.y < 2.00000000E+00, _TMP261.z < 2.00000000E+00, _TMP261.w < 2.00000000E+00);
_a0270 = _r0172.zwxy - _r0152.yzwx;
_TMP267 = abs(_a0270);
_TMP35 = bvec4(_TMP267.x < 2.00000000E+00, _TMP267.y < 2.00000000E+00, _TMP267.z < 2.00000000E+00, _TMP267.w < 2.00000000E+00);
_interp_restriction_lv3_up = bvec4(_TMP34.x && !_TMP35.x, _TMP34.y && !_TMP35.y, _TMP34.z && !_TMP35.z, _TMP34.w && !_TMP35.w);
_x0274 = (_fx - vec4( 1.10000002E+00, 9.99999940E-02, -8.99999976E-01, 9.99999940E-02))/vec4( 7.99999952E-01, 7.99999952E-01, 7.99999952E-01, 7.99999952E-01);
_TMP65 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0274);
_TMP275 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP65);
_fx45 = _TMP275*_TMP275*(3.00000000E+00 - 2.00000000E+00*_TMP275);
_x0284 = (_fx_left - vec4( 6.00000024E-01, 6.00000024E-01, -8.99999976E-01, -4.00000006E-01))/vec4( 7.99999952E-01, 7.99999952E-01, 7.99999952E-01, 8.00000012E-01);
_TMP65 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0284);
_TMP285 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP65);
_fx30 = _TMP285*_TMP285*(3.00000000E+00 - 2.00000000E+00*_TMP285);
_x0294 = (_fx_up - vec4( 1.60000002E+00, -4.00000006E-01, -1.39999998E+00, 9.99999940E-02))/vec4( 8.00000072E-01, 8.00000012E-01, 7.99999952E-01, 7.99999952E-01);
_TMP65 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0294);
_TMP295 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP65);
_fx60 = _TMP295*_TMP295*(3.00000000E+00 - 2.00000000E+00*_TMP295);
_x0304 = (_fx3_left - vec4( 4.59999990E+00, 2.59999990E+00, -3.40000010E+00, -1.39999998E+00))/vec4( 8.00000191E-01, 8.00000191E-01, 8.00000191E-01, 7.99999952E-01);
_TMP65 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0304);
_TMP305 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP65);
_fx15 = _TMP305*_TMP305*(3.00000000E+00 - 2.00000000E+00*_TMP305);
_x0314 = (_fx3_up - vec4( 4.59999990E+00, -1.39999998E+00, -3.40000010E+00, 2.59999990E+00))/vec4( 8.00000191E-01, 7.99999952E-01, 8.00000191E-01, 8.00000191E-01);
_TMP65 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0314);
_TMP315 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP65);
_fx75 = _TMP315*_TMP315*(3.00000000E+00 - 2.00000000E+00*_TMP315);
_a0326 = _r0142 - _r0132;
_TMP323 = abs(_a0326);
_a0330 = _r0142 - _r0132.zwxy;
_TMP327 = abs(_a0330);
_a0334 = _r0132.wxyz - _r0172;
_TMP331 = abs(_a0334);
_a0338 = _r0132.wxyz - _r0172.yzwx;
_TMP335 = abs(_a0338);
_a0342 = _r0122.zwxy - _r0122.wxyz;
_TMP339 = abs(_a0342);
_TMP36 = _TMP323 + _TMP327 + _TMP331 + _TMP335 + 4.00000000E+00*_TMP339;
_a0348 = _r0122.zwxy - _r0122.yzwx;
_TMP345 = abs(_a0348);
_a0352 = _r0122.zwxy - _r0162;
_TMP349 = abs(_a0352);
_a0356 = _r0122.wxyz - _r0152;
_TMP353 = abs(_a0356);
_a0360 = _r0122.wxyz - _r0122;
_TMP357 = abs(_a0360);
_a0364 = _r0142 - _r0132.wxyz;
_TMP361 = abs(_a0364);
_TMP37 = _TMP345 + _TMP349 + _TMP353 + _TMP357 + 4.00000000E+00*_TMP361;
_edr = bvec4(_TMP36.x < _TMP37.x && _interp_restriction_lv1.x, _TMP36.y < _TMP37.y && _interp_restriction_lv1.y, _TMP36.z < _TMP37.z && _interp_restriction_lv1.z, _TMP36.w < _TMP37.w && _interp_restriction_lv1.w);
_a0368 = _r0122.wxyz - _r0132.zwxy;
_TMP365 = abs(_a0368);
_a0372 = _r0122.zwxy - _r0132;
_TMP369 = abs(_a0372);
_edr_left = bvec4((2.00000000E+00*_TMP365).x <= _TMP369.x && _interp_restriction_lv2_left.x, (2.00000000E+00*_TMP365).y <= _TMP369.y && _interp_restriction_lv2_left.y, (2.00000000E+00*_TMP365).z <= _TMP369.z && _interp_restriction_lv2_left.z, (2.00000000E+00*_TMP365).w <= _TMP369.w && _interp_restriction_lv2_left.w);
_a0376 = _r0122.wxyz - _r0132.zwxy;
_TMP373 = abs(_a0376);
_a0380 = _r0122.zwxy - _r0132;
_TMP377 = abs(_a0380);
_edr_up = bvec4(_TMP373.x >= (2.00000000E+00*_TMP377).x && _interp_restriction_lv2_up.x, _TMP373.y >= (2.00000000E+00*_TMP377).y && _interp_restriction_lv2_up.y, _TMP373.z >= (2.00000000E+00*_TMP377).z && _interp_restriction_lv2_up.z, _TMP373.w >= (2.00000000E+00*_TMP377).w && _interp_restriction_lv2_up.w);
_nc45 = bvec4(_edr.x && bool(_fx45.x), _edr.y && bool(_fx45.y), _edr.z && bool(_fx45.z), _edr.w && bool(_fx45.w));
_nc30 = bvec4(_edr.x && _edr_left.x && bool(_fx30.x), _edr.y && _edr_left.y && bool(_fx30.y), _edr.z && _edr_left.z && bool(_fx30.z), _edr.w && _edr_left.w && bool(_fx30.w));
_nc60 = bvec4(_edr.x && _edr_up.x && bool(_fx60.x), _edr.y && _edr_up.y && bool(_fx60.y), _edr.z && _edr_up.z && bool(_fx60.z), _edr.w && _edr_up.w && bool(_fx60.w));
_nc15 = bvec4(_edr.x && _edr_left.x && _interp_restriction_lv3_left.x && bool(_fx15.x), _edr.y && _edr_left.y && _interp_restriction_lv3_left.y && bool(_fx15.y), _edr.z && _edr_left.z && _interp_restriction_lv3_left.z && bool(_fx15.z), _edr.w && _edr_left.w && _interp_restriction_lv3_left.w && bool(_fx15.w));
_nc75 = bvec4(_edr.x && _edr_up.x && _interp_restriction_lv3_up.x && bool(_fx75.x), _edr.y && _edr_up.y && _interp_restriction_lv3_up.y && bool(_fx75.y), _edr.z && _edr_up.z && _interp_restriction_lv3_up.z && bool(_fx75.z), _edr.w && _edr_up.w && _interp_restriction_lv3_up.w && bool(_fx75.w));
_a0384 = _r0142 - _r0122.wxyz;
_TMP381 = abs(_a0384);
_a0388 = _r0142 - _r0122.zwxy;
_TMP385 = abs(_a0388);
_px = bvec4(_TMP381.x <= _TMP385.x, _TMP381.y <= _TMP385.y, _TMP381.z <= _TMP385.z, _TMP381.w <= _TMP385.w);
_nc = bvec4(_nc75.x || _nc15.x || _nc30.x || _nc60.x || _nc45.x, _nc75.y || _nc15.y || _nc30.y || _nc60.y || _nc45.y, _nc75.z || _nc15.z || _nc30.z || _nc60.z || _nc45.z, _nc75.w || _nc15.w || _nc30.w || _nc60.w || _nc45.w);
_final45 = vec4(float(_nc45.x), float(_nc45.y), float(_nc45.z), float(_nc45.w))*_fx45;
_final30 = vec4(float(_nc30.x), float(_nc30.y), float(_nc30.z), float(_nc30.w))*_fx30;
_final60 = vec4(float(_nc60.x), float(_nc60.y), float(_nc60.z), float(_nc60.w))*_fx60;
_final15 = vec4(float(_nc15.x), float(_nc15.y), float(_nc15.z), float(_nc15.w))*_fx15;
_final75 = vec4(float(_nc75.x), float(_nc75.y), float(_nc75.z), float(_nc75.w))*_fx75;
_TMP44 = max(_final15, _final75);
_TMP45 = max(_final30, _final60);
_TMP46 = max(_TMP44, _TMP45);
_maximo = max(_TMP46, _final45);
if (_nc.x) {
if (_px.x) {
_TMP47 = _TMP8.xyz;
} else {
_TMP47 = _TMP10.xyz;
}
_pix1 = _TMP47;
_blend1 = _maximo.x;
} else {
if (_nc.y) {
if (_px.y) {
_TMP48 = _TMP4.xyz;
} else {
_TMP48 = _TMP8.xyz;
}
_pix1 = _TMP48;
_blend1 = _maximo.y;
} else {
if (_nc.z) {
if (_px.z) {
_TMP49 = _TMP6.xyz;
} else {
_TMP49 = _TMP4.xyz;
}
_pix1 = _TMP49;
_blend1 = _maximo.z;
} else {
if (_nc.w) {
if (_px.w) {
_TMP50 = _TMP10.xyz;
} else {
_TMP50 = _TMP6.xyz;
}
_pix1 = _TMP50;
_blend1 = _maximo.w;
}
}
}
}
if (_nc.w) {
if (_px.w) {
_TMP51 = _TMP10.xyz;
} else {
_TMP51 = _TMP6.xyz;
}
_pix2 = _TMP51;
_blend2 = _maximo.w;
} else {
if (_nc.z) {
if (_px.z) {
_TMP52 = _TMP6.xyz;
} else {
_TMP52 = _TMP4.xyz;
}
_pix2 = _TMP52;
_blend2 = _maximo.z;
} else {
if (_nc.y) {
if (_px.y) {
_TMP53 = _TMP4.xyz;
} else {
_TMP53 = _TMP8.xyz;
}
_pix2 = _TMP53;
_blend2 = _maximo.y;
} else {
if (_nc.x) {
if (_px.x) {
_TMP54 = _TMP8.xyz;
} else {
_TMP54 = _TMP10.xyz;
}
_pix2 = _TMP54;
_blend2 = _maximo.x;
}
}
}
}
_res1 = _TMP7.xyz + _blend1*(_pix1 - _TMP7.xyz);
_res2 = _TMP7.xyz + _blend2*(_pix2 - _TMP7.xyz);
_a0404 = _TMP7.xyz - _res1;
_df0402 = abs(_a0404);
_TMP55 = _df0402.x + _df0402.y + _df0402.z;
_a0408 = _TMP7.xyz - _res2;
_df0406 = abs(_a0408);
_TMP56 = _df0406.x + _df0406.y + _df0406.z;
_TMP57 = float((_TMP56 >= _TMP55));
_res = _res1 + _TMP57*(_res2 - _res1);
_ret_0 = vec4(_res.x, _res.y, _res.z, 1.00000000E+00);
FragColor = _ret_0;
return;
}
#endif