1// GLSL shader autogenerated by cg2glsl.py.
2#if defined(VERTEX)
3
4#if __VERSION__ >= 130
5#define COMPAT_VARYING out
6#define COMPAT_ATTRIBUTE in
7#define COMPAT_TEXTURE texture
8#else
9#define COMPAT_VARYING varying
10#define COMPAT_ATTRIBUTE attribute
11#define COMPAT_TEXTURE texture2D
12#endif
13
14#ifdef GL_ES
15#define COMPAT_PRECISION mediump
16#else
17#define COMPAT_PRECISION
18#endif
19COMPAT_VARYING     float _frame_rotation;
20COMPAT_VARYING     vec4 _color1;
21struct output_dummy {
22    vec4 _color1;
23};
24struct input_dummy {
25    vec2 _video_size;
26    vec2 _texture_size;
27    vec2 _output_dummy_size;
28    float _frame_count;
29    float _frame_direction;
30    float _frame_rotation;
31};
32vec4 _oPosition1;
33vec4 _r0005;
34COMPAT_ATTRIBUTE vec4 gl_Vertex;
35COMPAT_ATTRIBUTE vec4 COLOR;
36COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
37COMPAT_VARYING vec4 COL0;
38COMPAT_VARYING vec4 TEX0;
39
40uniform int FrameDirection;
41uniform int FrameCount;
42uniform COMPAT_PRECISION vec2 OutputSize;
43uniform COMPAT_PRECISION vec2 TextureSize;
44uniform COMPAT_PRECISION vec2 InputSize;
45void main()
46{
47    vec4 _oColor;
48    vec2 _otexCoord;
49    _r0005 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
50    _r0005 = _r0005 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
51    _r0005 = _r0005 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
52    _r0005 = _r0005 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
53    _oPosition1 = _r0005;
54    _oColor = COLOR;
55    _otexCoord = gl_MultiTexCoord0.xy;
56    gl_Position = _r0005;
57    COL0 = COLOR;
58    TEX0.xy = gl_MultiTexCoord0.xy;
59}
60#elif defined(FRAGMENT)
61
62#if __VERSION__ >= 130
63#define COMPAT_VARYING in
64#define COMPAT_TEXTURE texture
65out vec4 FragColor;
66#else
67#define COMPAT_VARYING varying
68#define FragColor gl_FragColor
69#define COMPAT_TEXTURE texture2D
70#endif
71
72#ifdef GL_ES
73#ifdef GL_FRAGMENT_PRECISION_HIGH
74precision highp float;
75#else
76precision mediump float;
77#endif
78#define COMPAT_PRECISION mediump
79#else
80#define COMPAT_PRECISION
81#endif
82COMPAT_VARYING     float _frame_rotation;
83COMPAT_VARYING     vec4 _color;
84struct output_dummy {
85    vec4 _color;
86};
87struct input_dummy {
88    vec2 _video_size;
89    vec2 _texture_size;
90    vec2 _output_dummy_size;
91    float _frame_count;
92    float _frame_direction;
93    float _frame_rotation;
94};
95float _TMP19;
96float _TMP18;
97float _TMP17;
98float _TMP16;
99float _TMP24;
100float _TMP23;
101float _TMP22;
102float _TMP21;
103vec4 _TMP8;
104vec4 _TMP7;
105vec4 _TMP20;
106float _TMP28;
107float _TMP27;
108float _TMP26;
109float _TMP25;
110vec4 _TMP6;
111vec4 _TMP4;
112vec4 _TMP3;
113vec4 _TMP2;
114vec4 _TMP15;
115vec4 _TMP1;
116vec4 _TMP0;
117float _TMP14;
118float _TMP13;
119float _TMP12;
120float _TMP11;
121uniform sampler2D Texture;
122input_dummy _IN1;
123vec2 _c0036;
124vec2 _c0040;
125vec2 _c0042;
126vec2 _c0044;
127vec2 _c0046;
128vec2 _c0048;
129vec2 _c0050;
130vec2 _x0052;
131vec4 _x0054;
132vec4 _x0064;
133vec4 _TMP73;
134vec4 _x0074;
135vec4 _TMP79;
136vec4 _x0080;
137vec4 _a0116;
138vec4 _a0128;
139vec4 _TMP137;
140vec4 _x0138;
141vec4 _a0160;
142vec4 _a0172;
143vec4 _TMP181;
144vec4 _x0182;
145float _a0194;
146float _c0194;
147float _a0196;
148vec4 _a0202;
149COMPAT_VARYING vec4 TEX0;
150
151uniform int FrameDirection;
152uniform int FrameCount;
153uniform COMPAT_PRECISION vec2 OutputSize;
154uniform COMPAT_PRECISION vec2 TextureSize;
155uniform COMPAT_PRECISION vec2 InputSize;
156void main()
157{
158    output_dummy _OUT;
159    vec2 _xy;
160    vec4 _texels[8];
161    vec2 _uv_ratio;
162    vec4 _col;
163    vec4 _col2;
164    vec4 _coeffs;
165    vec4 _wid;
166    vec4 _weights;
167    vec4 _weights2;
168    vec4 _mcol;
169    _xy = TEX0.xy + vec2(0.00000000E+00, -5.00000000E-01*(2.22991081E-03/OutputSize.y)*4.80480469E+02);
170    _c0036 = _xy + vec2( -7.68768738E+02, 0.00000000E+00);
171    _texels[0] = COMPAT_TEXTURE(Texture, _c0036);
172    _texels[1] = COMPAT_TEXTURE(Texture, _xy);
173    _c0040 = _xy + vec2( 7.68768738E+02, 0.00000000E+00);
174    _texels[2] = COMPAT_TEXTURE(Texture, _c0040);
175    _c0042 = _xy + vec2( 1.53753748E+03, 0.00000000E+00);
176    _texels[3] = COMPAT_TEXTURE(Texture, _c0042);
177    _c0044 = _xy + vec2( -7.68768738E+02, 4.80480469E+02);
178    _texels[4] = COMPAT_TEXTURE(Texture, _c0044);
179    _c0046 = _xy + vec2( 0.00000000E+00, 4.80480469E+02);
180    _texels[5] = COMPAT_TEXTURE(Texture, _c0046);
181    _c0048 = _xy + vec2( 7.68768738E+02, 4.80480469E+02);
182    _texels[6] = COMPAT_TEXTURE(Texture, _c0048);
183    _c0050 = _xy + vec2( 1.53753748E+03, 4.80480469E+02);
184    _texels[7] = COMPAT_TEXTURE(Texture, _c0050);
185    _x0052 = _xy*vec2( 1.30078127E-03, 2.08125007E-03);
186    _uv_ratio = fract(_x0052);
187    _coeffs = vec4(1.00000000E+00 + _uv_ratio.x, _uv_ratio.x, 1.00000000E+00 - _uv_ratio.x, 2.00000000E+00 - _uv_ratio.x);
188    _x0054 = 3.14159274E+00*_coeffs;
189    _TMP11 = sin(_x0054.x);
190    _TMP12 = sin(_x0054.y);
191    _TMP13 = sin(_x0054.z);
192    _TMP14 = sin(_x0054.w);
193    _TMP0 = vec4(_TMP11, _TMP12, _TMP13, _TMP14);
194    _x0064 = (3.14159274E+00*_coeffs)/2.00000000E+00;
195    _TMP11 = sin(_x0064.x);
196    _TMP12 = sin(_x0064.y);
197    _TMP13 = sin(_x0064.z);
198    _TMP14 = sin(_x0064.w);
199    _TMP1 = vec4(_TMP11, _TMP12, _TMP13, _TMP14);
200    _coeffs = (_TMP0*_TMP1)/(_coeffs*_coeffs);
201    _coeffs = _coeffs/(_coeffs.x + _coeffs.y + _coeffs.z + _coeffs.w);
202    _x0074 = _coeffs.x*_texels[0] + _coeffs.y*_texels[1] + _coeffs.z*_texels[2] + _coeffs.w*_texels[3];
203    _TMP15 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0074);
204    _TMP73 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP15);
205    _x0080 = _coeffs.x*_texels[4] + _coeffs.y*_texels[5] + _coeffs.z*_texels[6] + _coeffs.w*_texels[7];
206    _TMP15 = min(vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00), _x0080);
207    _TMP79 = max(vec4( 0.00000000E+00, 0.00000000E+00, 0.00000000E+00, 0.00000000E+00), _TMP15);
208    _TMP16 = pow(_TMP73.x, 2.50000000E+00);
209    _TMP17 = pow(_TMP73.y, 2.50000000E+00);
210    _TMP18 = pow(_TMP73.z, 2.50000000E+00);
211    _TMP19 = pow(_TMP73.w, 2.50000000E+00);
212    _col = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
213    _TMP16 = pow(_TMP79.x, 2.50000000E+00);
214    _TMP17 = pow(_TMP79.y, 2.50000000E+00);
215    _TMP18 = pow(_TMP79.z, 2.50000000E+00);
216    _TMP19 = pow(_TMP79.w, 2.50000000E+00);
217    _col2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
218    _TMP16 = pow(_col.x, 4.00000000E+00);
219    _TMP17 = pow(_col.y, 4.00000000E+00);
220    _TMP18 = pow(_col.z, 4.00000000E+00);
221    _TMP19 = pow(_col.w, 4.00000000E+00);
222    _TMP2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
223    _wid = 2.00000000E+00 + 2.00000000E+00*_TMP2;
224    _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);
225    _a0116 = 2.00000000E+00/_wid;
226    _TMP25 = inversesqrt(_a0116.x);
227    _TMP26 = inversesqrt(_a0116.y);
228    _TMP27 = inversesqrt(_a0116.z);
229    _TMP28 = inversesqrt(_a0116.w);
230    _TMP20 = vec4(_TMP25, _TMP26, _TMP27, _TMP28);
231    _TMP3 = 1.00000000E+00/_TMP20;
232    _a0128 = _weights*_TMP3;
233    _TMP16 = pow(_a0128.x, _wid.x);
234    _TMP17 = pow(_a0128.y, _wid.y);
235    _TMP18 = pow(_a0128.z, _wid.z);
236    _TMP19 = pow(_a0128.w, _wid.w);
237    _TMP4 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
238    _x0138 = -_TMP4;
239    _TMP16 = pow(2.71828198E+00, _x0138.x);
240    _TMP17 = pow(2.71828198E+00, _x0138.y);
241    _TMP18 = pow(2.71828198E+00, _x0138.z);
242    _TMP19 = pow(2.71828198E+00, _x0138.w);
243    _TMP137 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
244    _weights = ((5.09999990E-01*_TMP137)/3.00000012E-01)/(6.00000024E-01 + 2.00000003E-01*_wid);
245    _TMP16 = pow(_col2.x, 4.00000000E+00);
246    _TMP17 = pow(_col2.y, 4.00000000E+00);
247    _TMP18 = pow(_col2.z, 4.00000000E+00);
248    _TMP19 = pow(_col2.w, 4.00000000E+00);
249    _TMP6 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
250    _wid = 2.00000000E+00 + 4.00000000E+00*_TMP6;
251    _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);
252    _a0160 = 2.00000000E+00/_wid;
253    _TMP25 = inversesqrt(_a0160.x);
254    _TMP26 = inversesqrt(_a0160.y);
255    _TMP27 = inversesqrt(_a0160.z);
256    _TMP28 = inversesqrt(_a0160.w);
257    _TMP20 = vec4(_TMP25, _TMP26, _TMP27, _TMP28);
258    _TMP7 = 1.00000000E+00/_TMP20;
259    _a0172 = _weights2*_TMP7;
260    _TMP16 = pow(_a0172.x, _wid.x);
261    _TMP17 = pow(_a0172.y, _wid.y);
262    _TMP18 = pow(_a0172.z, _wid.z);
263    _TMP19 = pow(_a0172.w, _wid.w);
264    _TMP8 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
265    _x0182 = -_TMP8;
266    _TMP16 = pow(2.71828198E+00, _x0182.x);
267    _TMP17 = pow(2.71828198E+00, _x0182.y);
268    _TMP18 = pow(2.71828198E+00, _x0182.z);
269    _TMP19 = pow(2.71828198E+00, _x0182.w);
270    _TMP181 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
271    _weights2 = ((5.09999990E-01*_TMP181)/3.00000012E-01)/(6.00000024E-01 + 2.00000003E-01*_wid);
272    _mcol = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00);
273    _a0194 = _xy.x*OutputSize.x;
274    _a0196 = _a0194/2.00000000E+00;
275    _TMP21 = abs(_a0196);
276    _TMP22 = fract(_TMP21);
277    _TMP23 = abs(2.00000000E+00);
278    _c0194 = _TMP22*_TMP23;
279    if (_a0194 < 0.00000000E+00) {
280        _TMP24 = -_c0194;
281    } else {
282        _TMP24 = _c0194;
283    }
284    if (_TMP24 < 1.00000000E+00) {
285        _mcol.y = 6.99999988E-01;
286    } else {
287        _mcol.xz = vec2( 6.99999988E-01, 6.99999988E-01);
288    }
289    _a0202 = _mcol*(_col*_weights + _col2*_weights2);
290    _TMP16 = pow(_a0202.x, 4.54545438E-01);
291    _TMP17 = pow(_a0202.y, 4.54545438E-01);
292    _TMP18 = pow(_a0202.z, 4.54545438E-01);
293    _TMP19 = pow(_a0202.w, 4.54545438E-01);
294    _OUT._color = vec4(_TMP16, _TMP17, _TMP18, _TMP19);
295    FragColor = _OUT._color;
296    return;
297}
298#endif
299