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