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     vec2 _texCoord;
20COMPAT_VARYING     vec4 _color1;
21COMPAT_VARYING     vec4 _position1;
22COMPAT_VARYING     float _frame_rotation;
23struct input_dummy {
24    vec2 _video_size;
25    vec2 _texture_size;
26    vec2 _output_dummy_size;
27    float _frame_count;
28    float _frame_direction;
29    float _frame_rotation;
30};
31struct out_vertex {
32    vec4 _position1;
33    vec4 _color1;
34    vec2 _texCoord;
35};
36out_vertex _ret_0;
37vec4 _r0008;
38COMPAT_ATTRIBUTE vec4 gl_Vertex;
39COMPAT_ATTRIBUTE vec4 COLOR;
40COMPAT_ATTRIBUTE vec4 gl_MultiTexCoord0;
41COMPAT_VARYING vec4 COL0;
42COMPAT_VARYING vec4 TEX0;
43
44uniform int FrameDirection;
45uniform int FrameCount;
46uniform COMPAT_PRECISION vec2 OutputSize;
47uniform COMPAT_PRECISION vec2 TextureSize;
48uniform COMPAT_PRECISION vec2 InputSize;
49void main()
50{
51    _r0008 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0];
52    _r0008 = _r0008 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1];
53    _r0008 = _r0008 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2];
54    _r0008 = _r0008 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3];
55    _ret_0._position1 = _r0008;
56    _ret_0._color1 = COLOR;
57    _ret_0._texCoord = gl_MultiTexCoord0.xy;
58    gl_Position = _r0008;
59    COL0 = COLOR;
60    TEX0.xy = gl_MultiTexCoord0.xy;
61    return;
62    COL0 = _ret_0._color1;
63    TEX0.xy = _ret_0._texCoord;
64}
65#elif defined(FRAGMENT)
66
67#if __VERSION__ >= 130
68#define COMPAT_VARYING in
69#define COMPAT_TEXTURE texture
70out vec4 FragColor;
71#else
72#define COMPAT_VARYING varying
73#define FragColor gl_FragColor
74#define COMPAT_TEXTURE texture2D
75#endif
76
77#ifdef GL_ES
78#ifdef GL_FRAGMENT_PRECISION_HIGH
79precision highp float;
80#else
81precision mediump float;
82#endif
83#define COMPAT_PRECISION mediump
84#else
85#define COMPAT_PRECISION
86#endif
87COMPAT_VARYING     vec2 _texCoord;
88COMPAT_VARYING     vec4 _color1;
89COMPAT_VARYING     float _frame_rotation;
90struct input_dummy {
91    vec2 _video_size;
92    vec2 _texture_size;
93    vec2 _output_dummy_size;
94    float _frame_count;
95    float _frame_direction;
96    float _frame_rotation;
97};
98struct out_vertex {
99    vec4 _color1;
100    vec2 _texCoord;
101};
102vec4 _ret_0;
103vec3 _TMP45;
104float _TMP37;
105vec3 _TMP44;
106vec3 _TMP43;
107vec3 _TMP42;
108vec3 _TMP41;
109vec4 _TMP32;
110vec4 _TMP31;
111vec4 _TMP30;
112vec4 _TMP29;
113vec4 _TMP28;
114vec4 _TMP27;
115vec4 _TMP26;
116vec4 _TMP25;
117vec4 _TMP24;
118vec4 _TMP23;
119vec4 _TMP22;
120vec4 _TMP21;
121vec4 _TMP20;
122vec4 _TMP19;
123vec4 _TMP18;
124vec4 _TMP17;
125vec4 _TMP40;
126vec4 _TMP39;
127float _TMP50;
128float _TMP49;
129float _TMP48;
130float _TMP47;
131float _TMP38;
132float _TMP46;
133vec2 _TMP0;
134uniform sampler2D Texture;
135input_dummy _IN1;
136vec2 _x0060;
137float _TMP61;
138vec2 _v0062;
139vec2 _pt20062;
140float _TMP69;
141vec2 _v0070;
142vec2 _pt20070;
143float _TMP77;
144vec2 _v0078;
145vec2 _pt20078;
146float _TMP85;
147vec2 _v0086;
148vec2 _pt20086;
149vec4 _x0094;
150vec4 _res0094;
151vec4 _x0096;
152vec4 _x0106;
153float _TMP115;
154vec2 _v0116;
155vec2 _pt20116;
156float _TMP123;
157vec2 _v0124;
158float _TMP131;
159vec2 _v0132;
160vec2 _pt20132;
161float _TMP139;
162vec2 _v0140;
163vec2 _pt20140;
164vec4 _x0148;
165vec4 _res0148;
166vec4 _x0150;
167vec4 _x0160;
168float _TMP169;
169vec2 _v0170;
170vec2 _pt20170;
171float _TMP177;
172vec2 _v0178;
173vec2 _pt20178;
174float _TMP185;
175vec2 _v0186;
176vec2 _pt20186;
177float _TMP193;
178vec2 _v0194;
179vec2 _pt20194;
180vec4 _x0202;
181vec4 _res0202;
182vec4 _x0204;
183vec4 _x0214;
184float _TMP223;
185vec2 _v0224;
186vec2 _pt20224;
187float _TMP231;
188vec2 _v0232;
189vec2 _pt20232;
190float _TMP239;
191vec2 _v0240;
192vec2 _pt20240;
193float _TMP247;
194vec2 _v0248;
195vec2 _pt20248;
196vec4 _x0256;
197vec4 _res0256;
198vec4 _x0258;
199vec4 _x0268;
200vec2 _c0278;
201vec2 _c0280;
202vec2 _c0282;
203vec2 _c0284;
204vec2 _c0286;
205vec2 _c0290;
206vec2 _c0292;
207vec2 _c0294;
208vec2 _c0296;
209vec2 _c0298;
210vec2 _c0300;
211vec2 _c0302;
212vec2 _c0304;
213vec2 _c0306;
214vec2 _c0308;
215vec3 _TMP309;
216vec3 _TMP317;
217vec3 _r0326;
218vec3 _r0328;
219vec3 _r0330;
220vec3 _r0332;
221vec4 _r0334;
222vec3 _TMP345;
223COMPAT_VARYING vec4 TEX0;
224
225uniform int FrameDirection;
226uniform int FrameCount;
227uniform COMPAT_PRECISION vec2 OutputSize;
228uniform COMPAT_PRECISION vec2 TextureSize;
229uniform COMPAT_PRECISION vec2 InputSize;
230void main()
231{
232    vec3 _color;
233    vec2 _dx;
234    vec2 _dy;
235    vec2 _pc;
236    vec2 _tc;
237    _pc = TEX0.xy*TextureSize;
238    _x0060 = _pc - vec2( 5.00000000E-01, 5.00000000E-01);
239    _TMP0 = floor(_x0060);
240    _tc = _TMP0 + vec2( 5.00000000E-01, 5.00000000E-01);
241    _pt20062 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
242    _v0062 = _pt20062 - _pc;
243    _TMP38 = dot(_v0062, _v0062);
244    _TMP46 = inversesqrt(_TMP38);
245    _TMP61 = 1.00000000E+00/_TMP46;
246    _pt20070 = _tc - vec2( 0.00000000E+00, 1.00000000E+00);
247    _v0070 = _pt20070 - _pc;
248    _TMP38 = dot(_v0070, _v0070);
249    _TMP46 = inversesqrt(_TMP38);
250    _TMP69 = 1.00000000E+00/_TMP46;
251    _pt20078 = (_tc + vec2( 1.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
252    _v0078 = _pt20078 - _pc;
253    _TMP38 = dot(_v0078, _v0078);
254    _TMP46 = inversesqrt(_TMP38);
255    _TMP77 = 1.00000000E+00/_TMP46;
256    _pt20086 = (_tc + vec2( 2.00000000E+00, 0.00000000E+00)) - vec2( 0.00000000E+00, 1.00000000E+00);
257    _v0086 = _pt20086 - _pc;
258    _TMP38 = dot(_v0086, _v0086);
259    _TMP46 = inversesqrt(_TMP38);
260    _TMP85 = 1.00000000E+00/_TMP46;
261    _x0094 = vec4(_TMP61, _TMP69, _TMP77, _TMP85);
262    _x0096 = _x0094*1.22522116E+00;
263    _TMP47 = sin(_x0096.x);
264    _TMP48 = sin(_x0096.y);
265    _TMP49 = sin(_x0096.z);
266    _TMP50 = sin(_x0096.w);
267    _TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
268    _x0106 = _x0094*2.57610607E+00;
269    _TMP47 = sin(_x0106.x);
270    _TMP48 = sin(_x0106.y);
271    _TMP49 = sin(_x0106.z);
272    _TMP50 = sin(_x0106.w);
273    _TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
274    _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);
275    _pt20116 = _tc - vec2( 1.00000000E+00, 0.00000000E+00);
276    _v0116 = _pt20116 - _pc;
277    _TMP38 = dot(_v0116, _v0116);
278    _TMP46 = inversesqrt(_TMP38);
279    _TMP115 = 1.00000000E+00/_TMP46;
280    _v0124 = _tc - _pc;
281    _TMP38 = dot(_v0124, _v0124);
282    _TMP46 = inversesqrt(_TMP38);
283    _TMP123 = 1.00000000E+00/_TMP46;
284    _pt20132 = _tc + vec2( 1.00000000E+00, 0.00000000E+00);
285    _v0132 = _pt20132 - _pc;
286    _TMP38 = dot(_v0132, _v0132);
287    _TMP46 = inversesqrt(_TMP38);
288    _TMP131 = 1.00000000E+00/_TMP46;
289    _pt20140 = _tc + vec2( 2.00000000E+00, 0.00000000E+00);
290    _v0140 = _pt20140 - _pc;
291    _TMP38 = dot(_v0140, _v0140);
292    _TMP46 = inversesqrt(_TMP38);
293    _TMP139 = 1.00000000E+00/_TMP46;
294    _x0148 = vec4(_TMP115, _TMP123, _TMP131, _TMP139);
295    _x0150 = _x0148*1.22522116E+00;
296    _TMP47 = sin(_x0150.x);
297    _TMP48 = sin(_x0150.y);
298    _TMP49 = sin(_x0150.z);
299    _TMP50 = sin(_x0150.w);
300    _TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
301    _x0160 = _x0148*2.57610607E+00;
302    _TMP47 = sin(_x0160.x);
303    _TMP48 = sin(_x0160.y);
304    _TMP49 = sin(_x0160.z);
305    _TMP50 = sin(_x0160.w);
306    _TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
307    _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);
308    _pt20170 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 1.00000000E+00);
309    _v0170 = _pt20170 - _pc;
310    _TMP38 = dot(_v0170, _v0170);
311    _TMP46 = inversesqrt(_TMP38);
312    _TMP169 = 1.00000000E+00/_TMP46;
313    _pt20178 = _tc + vec2( 0.00000000E+00, 1.00000000E+00);
314    _v0178 = _pt20178 - _pc;
315    _TMP38 = dot(_v0178, _v0178);
316    _TMP46 = inversesqrt(_TMP38);
317    _TMP177 = 1.00000000E+00/_TMP46;
318    _pt20186 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
319    _v0186 = _pt20186 - _pc;
320    _TMP38 = dot(_v0186, _v0186);
321    _TMP46 = inversesqrt(_TMP38);
322    _TMP185 = 1.00000000E+00/_TMP46;
323    _pt20194 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 1.00000000E+00);
324    _v0194 = _pt20194 - _pc;
325    _TMP38 = dot(_v0194, _v0194);
326    _TMP46 = inversesqrt(_TMP38);
327    _TMP193 = 1.00000000E+00/_TMP46;
328    _x0202 = vec4(_TMP169, _TMP177, _TMP185, _TMP193);
329    _x0204 = _x0202*1.22522116E+00;
330    _TMP47 = sin(_x0204.x);
331    _TMP48 = sin(_x0204.y);
332    _TMP49 = sin(_x0204.z);
333    _TMP50 = sin(_x0204.w);
334    _TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
335    _x0214 = _x0202*2.57610607E+00;
336    _TMP47 = sin(_x0214.x);
337    _TMP48 = sin(_x0214.y);
338    _TMP49 = sin(_x0214.z);
339    _TMP50 = sin(_x0214.w);
340    _TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
341    _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);
342    _pt20224 = (_tc - vec2( 1.00000000E+00, 0.00000000E+00)) + vec2( 0.00000000E+00, 2.00000000E+00);
343    _v0224 = _pt20224 - _pc;
344    _TMP38 = dot(_v0224, _v0224);
345    _TMP46 = inversesqrt(_TMP38);
346    _TMP223 = 1.00000000E+00/_TMP46;
347    _pt20232 = _tc + vec2( 0.00000000E+00, 2.00000000E+00);
348    _v0232 = _pt20232 - _pc;
349    _TMP38 = dot(_v0232, _v0232);
350    _TMP46 = inversesqrt(_TMP38);
351    _TMP231 = 1.00000000E+00/_TMP46;
352    _pt20240 = _tc + vec2( 1.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
353    _v0240 = _pt20240 - _pc;
354    _TMP38 = dot(_v0240, _v0240);
355    _TMP46 = inversesqrt(_TMP38);
356    _TMP239 = 1.00000000E+00/_TMP46;
357    _pt20248 = _tc + vec2( 2.00000000E+00, 0.00000000E+00) + vec2( 0.00000000E+00, 2.00000000E+00);
358    _v0248 = _pt20248 - _pc;
359    _TMP38 = dot(_v0248, _v0248);
360    _TMP46 = inversesqrt(_TMP38);
361    _TMP247 = 1.00000000E+00/_TMP46;
362    _x0256 = vec4(_TMP223, _TMP231, _TMP239, _TMP247);
363    _x0258 = _x0256*1.22522116E+00;
364    _TMP47 = sin(_x0258.x);
365    _TMP48 = sin(_x0258.y);
366    _TMP49 = sin(_x0258.z);
367    _TMP50 = sin(_x0258.w);
368    _TMP39 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
369    _x0268 = _x0256*2.57610607E+00;
370    _TMP47 = sin(_x0268.x);
371    _TMP48 = sin(_x0268.y);
372    _TMP49 = sin(_x0268.z);
373    _TMP50 = sin(_x0268.w);
374    _TMP40 = vec4(_TMP47, _TMP48, _TMP49, _TMP50);
375    _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);
376    _dx = vec2( 1.00000000E+00, 0.00000000E+00)/TextureSize;
377    _dy = vec2( 0.00000000E+00, 1.00000000E+00)/TextureSize;
378    _tc = _tc/TextureSize;
379    _c0278 = (_tc - _dx) - _dy;
380    _TMP17 = COMPAT_TEXTURE(Texture, _c0278);
381    _c0280 = _tc - _dy;
382    _TMP18 = COMPAT_TEXTURE(Texture, _c0280);
383    _c0282 = (_tc + _dx) - _dy;
384    _TMP19 = COMPAT_TEXTURE(Texture, _c0282);
385    _c0284 = (_tc + 2.00000000E+00*_dx) - _dy;
386    _TMP20 = COMPAT_TEXTURE(Texture, _c0284);
387    _c0286 = _tc - _dx;
388    _TMP21 = COMPAT_TEXTURE(Texture, _c0286);
389    _TMP22 = COMPAT_TEXTURE(Texture, _tc);
390    _c0290 = _tc + _dx;
391    _TMP23 = COMPAT_TEXTURE(Texture, _c0290);
392    _c0292 = _tc + 2.00000000E+00*_dx;
393    _TMP24 = COMPAT_TEXTURE(Texture, _c0292);
394    _c0294 = (_tc - _dx) + _dy;
395    _TMP25 = COMPAT_TEXTURE(Texture, _c0294);
396    _c0296 = _tc + _dy;
397    _TMP26 = COMPAT_TEXTURE(Texture, _c0296);
398    _c0298 = _tc + _dx + _dy;
399    _TMP27 = COMPAT_TEXTURE(Texture, _c0298);
400    _c0300 = _tc + 2.00000000E+00*_dx + _dy;
401    _TMP28 = COMPAT_TEXTURE(Texture, _c0300);
402    _c0302 = (_tc - _dx) + 2.00000000E+00*_dy;
403    _TMP29 = COMPAT_TEXTURE(Texture, _c0302);
404    _c0304 = _tc + 2.00000000E+00*_dy;
405    _TMP30 = COMPAT_TEXTURE(Texture, _c0304);
406    _c0306 = _tc + _dx + 2.00000000E+00*_dy;
407    _TMP31 = COMPAT_TEXTURE(Texture, _c0306);
408    _c0308 = _tc + 2.00000000E+00*_dx + 2.00000000E+00*_dy;
409    _TMP32 = COMPAT_TEXTURE(Texture, _c0308);
410    _TMP41 = min(_TMP26.xyz, _TMP27.xyz);
411    _TMP42 = min(_TMP23.xyz, _TMP41);
412    _TMP309 = min(_TMP22.xyz, _TMP42);
413    _TMP43 = max(_TMP26.xyz, _TMP27.xyz);
414    _TMP44 = max(_TMP23.xyz, _TMP43);
415    _TMP317 = max(_TMP22.xyz, _TMP44);
416    _r0326 = _res0094.x*_TMP17.xyz;
417    _r0326 = _r0326 + _res0094.y*_TMP18.xyz;
418    _r0326 = _r0326 + _res0094.z*_TMP19.xyz;
419    _r0326 = _r0326 + _res0094.w*_TMP20.xyz;
420    _r0328 = _res0148.x*_TMP21.xyz;
421    _r0328 = _r0328 + _res0148.y*_TMP22.xyz;
422    _r0328 = _r0328 + _res0148.z*_TMP23.xyz;
423    _r0328 = _r0328 + _res0148.w*_TMP24.xyz;
424    _color = _r0326 + _r0328;
425    _r0330 = _res0202.x*_TMP25.xyz;
426    _r0330 = _r0330 + _res0202.y*_TMP26.xyz;
427    _r0330 = _r0330 + _res0202.z*_TMP27.xyz;
428    _r0330 = _r0330 + _res0202.w*_TMP28.xyz;
429    _color = _color + _r0330;
430    _r0332 = _res0256.x*_TMP29.xyz;
431    _r0332 = _r0332 + _res0256.y*_TMP30.xyz;
432    _r0332 = _r0332 + _res0256.z*_TMP31.xyz;
433    _r0332 = _r0332 + _res0256.w*_TMP32.xyz;
434    _color = _color + _r0332;
435    _r0334.x = dot(_res0094, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
436    _r0334.y = dot(_res0148, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
437    _r0334.z = dot(_res0202, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
438    _r0334.w = dot(_res0256, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
439    _TMP37 = dot(_r0334, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));
440    _color = _color/_TMP37;
441    _TMP45 = min(_TMP317, _color);
442    _TMP345 = max(_TMP309, _TMP45);
443    _color = _color + 8.00000012E-01*(_TMP345 - _color);
444    _ret_0 = vec4(_color.x, _color.y, _color.z, 1.00000000E+00);
445    FragColor = _ret_0;
446    return;
447}
448#endif
449