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 _r0006; 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 _r0006 = gl_Vertex.x*gl_ModelViewProjectionMatrix[0]; 50 _r0006 = _r0006 + gl_Vertex.y*gl_ModelViewProjectionMatrix[1]; 51 _r0006 = _r0006 + gl_Vertex.z*gl_ModelViewProjectionMatrix[2]; 52 _r0006 = _r0006 + gl_Vertex.w*gl_ModelViewProjectionMatrix[3]; 53 _oPosition1 = _r0006; 54 _oColor = COLOR; 55 _otexCoord = gl_MultiTexCoord0.xy; 56 gl_Position = _r0006; 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}; 95vec3 _TMP11; 96vec3 _TMP10; 97vec3 _TMP9; 98vec4 _TMP17; 99float _TMP8; 100vec4 _TMP7; 101vec4 _TMP6; 102float _TMP16; 103float _TMP15; 104float _TMP14; 105float _TMP13; 106vec4 _TMP5; 107input_dummy _IN1; 108uniform sampler2D Texture; 109vec2 _x0025; 110vec4 _ret0027; 111vec4 _a0029; 112vec4 _TMP30; 113vec4 _x0045; 114vec4 _ret0057; 115vec4 _a0059; 116vec4 _TMP60; 117vec4 _x0075; 118vec2 _c0091; 119vec2 _c0095; 120vec2 _c0099; 121vec2 _c0103; 122vec3 _r0105; 123float _ypos0107; 124vec2 _c0111; 125vec2 _c0115; 126vec2 _c0119; 127vec2 _c0123; 128vec3 _r0125; 129float _ypos0127; 130vec2 _c0131; 131vec2 _c0135; 132vec2 _c0139; 133vec2 _c0143; 134vec3 _r0145; 135float _ypos0147; 136vec2 _c0151; 137vec2 _c0155; 138vec2 _c0159; 139vec2 _c0163; 140vec3 _r0165; 141vec3 _r0167; 142COMPAT_VARYING vec4 TEX0; 143 144uniform int FrameDirection; 145uniform int FrameCount; 146uniform COMPAT_PRECISION vec2 OutputSize; 147uniform COMPAT_PRECISION vec2 TextureSize; 148uniform COMPAT_PRECISION vec2 InputSize; 149void main() 150{ 151 vec2 _stepxy; 152 vec2 _pos; 153 vec2 _f; 154 vec2 _xystart; 155 vec4 _xpos2; 156 vec4 _linetaps1; 157 vec4 _columntaps; 158 output_dummy _OUT; 159 _stepxy = 1.00000000E+00/TextureSize.xy; 160 _pos = TEX0.xy + _stepxy*5.00000000E-01; 161 _x0025 = _pos/_stepxy; 162 _f = fract(_x0025); 163 _xystart = (-1.50000000E+00 - _f)*_stepxy + _pos; 164 _xpos2 = vec4(_xystart.x, _xystart.x + _stepxy.x, _xystart.x + _stepxy.x*2.00000000E+00, _xystart.x + _stepxy.x*3.00000000E+00); 165 _a0029 = 3.14159274E+00*vec4(1.00000000E+00 + _f.x, _f.x, 1.00000000E+00 - _f.x, 2.00000000E+00 - _f.x); 166 _TMP5 = abs(_a0029); 167 _TMP30 = max(_TMP5, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06)); 168 _TMP13 = sin(_TMP30.x); 169 _TMP14 = sin(_TMP30.y); 170 _TMP15 = sin(_TMP30.z); 171 _TMP16 = sin(_TMP30.w); 172 _TMP6 = vec4(_TMP13, _TMP14, _TMP15, _TMP16); 173 _x0045 = _TMP30/2.00000000E+00; 174 _TMP13 = sin(_x0045.x); 175 _TMP14 = sin(_x0045.y); 176 _TMP15 = sin(_x0045.z); 177 _TMP16 = sin(_x0045.w); 178 _TMP7 = vec4(_TMP13, _TMP14, _TMP15, _TMP16); 179 _ret0027 = (_TMP6*_TMP7)/(_TMP30*_TMP30); 180 _TMP8 = dot(_ret0027, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00)); 181 _linetaps1 = _ret0027/_TMP8; 182 _a0059 = 3.14159274E+00*vec4(1.00000000E+00 + _f.y, _f.y, 1.00000000E+00 - _f.y, 2.00000000E+00 - _f.y); 183 _TMP5 = abs(_a0059); 184 _TMP60 = max(_TMP5, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06)); 185 _TMP13 = sin(_TMP60.x); 186 _TMP14 = sin(_TMP60.y); 187 _TMP15 = sin(_TMP60.z); 188 _TMP16 = sin(_TMP60.w); 189 _TMP6 = vec4(_TMP13, _TMP14, _TMP15, _TMP16); 190 _x0075 = _TMP60/2.00000000E+00; 191 _TMP13 = sin(_x0075.x); 192 _TMP14 = sin(_x0075.y); 193 _TMP15 = sin(_x0075.z); 194 _TMP16 = sin(_x0075.w); 195 _TMP7 = vec4(_TMP13, _TMP14, _TMP15, _TMP16); 196 _ret0057 = (_TMP6*_TMP7)/(_TMP60*_TMP60); 197 _TMP8 = dot(_ret0057, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00)); 198 _columntaps = _ret0057/_TMP8; 199 _c0091 = vec2(_xpos2.x, _xystart.y); 200 _TMP17 = COMPAT_TEXTURE(Texture, _c0091); 201 _TMP9 = _TMP17.xyz; 202 _c0095 = vec2(_xpos2.y, _xystart.y); 203 _TMP17 = COMPAT_TEXTURE(Texture, _c0095); 204 _TMP10 = _TMP17.xyz; 205 _c0099 = vec2(_xpos2.z, _xystart.y); 206 _TMP17 = COMPAT_TEXTURE(Texture, _c0099); 207 _TMP11 = _TMP17.xyz; 208 _c0103 = vec2(_xpos2.w, _xystart.y); 209 _TMP17 = COMPAT_TEXTURE(Texture, _c0103); 210 _r0105 = _linetaps1.x*_TMP9; 211 _r0105 = _r0105 + _linetaps1.y*_TMP10; 212 _r0105 = _r0105 + _linetaps1.z*_TMP11; 213 _r0105 = _r0105 + _linetaps1.w*_TMP17.xyz; 214 _ypos0107 = _xystart.y + _stepxy.y; 215 _c0111 = vec2(_xpos2.x, _ypos0107); 216 _TMP17 = COMPAT_TEXTURE(Texture, _c0111); 217 _TMP9 = _TMP17.xyz; 218 _c0115 = vec2(_xpos2.y, _ypos0107); 219 _TMP17 = COMPAT_TEXTURE(Texture, _c0115); 220 _TMP10 = _TMP17.xyz; 221 _c0119 = vec2(_xpos2.z, _ypos0107); 222 _TMP17 = COMPAT_TEXTURE(Texture, _c0119); 223 _TMP11 = _TMP17.xyz; 224 _c0123 = vec2(_xpos2.w, _ypos0107); 225 _TMP17 = COMPAT_TEXTURE(Texture, _c0123); 226 _r0125 = _linetaps1.x*_TMP9; 227 _r0125 = _r0125 + _linetaps1.y*_TMP10; 228 _r0125 = _r0125 + _linetaps1.z*_TMP11; 229 _r0125 = _r0125 + _linetaps1.w*_TMP17.xyz; 230 _ypos0127 = _xystart.y + _stepxy.y*2.00000000E+00; 231 _c0131 = vec2(_xpos2.x, _ypos0127); 232 _TMP17 = COMPAT_TEXTURE(Texture, _c0131); 233 _TMP9 = _TMP17.xyz; 234 _c0135 = vec2(_xpos2.y, _ypos0127); 235 _TMP17 = COMPAT_TEXTURE(Texture, _c0135); 236 _TMP10 = _TMP17.xyz; 237 _c0139 = vec2(_xpos2.z, _ypos0127); 238 _TMP17 = COMPAT_TEXTURE(Texture, _c0139); 239 _TMP11 = _TMP17.xyz; 240 _c0143 = vec2(_xpos2.w, _ypos0127); 241 _TMP17 = COMPAT_TEXTURE(Texture, _c0143); 242 _r0145 = _linetaps1.x*_TMP9; 243 _r0145 = _r0145 + _linetaps1.y*_TMP10; 244 _r0145 = _r0145 + _linetaps1.z*_TMP11; 245 _r0145 = _r0145 + _linetaps1.w*_TMP17.xyz; 246 _ypos0147 = _xystart.y + _stepxy.y*3.00000000E+00; 247 _c0151 = vec2(_xpos2.x, _ypos0147); 248 _TMP17 = COMPAT_TEXTURE(Texture, _c0151); 249 _TMP9 = _TMP17.xyz; 250 _c0155 = vec2(_xpos2.y, _ypos0147); 251 _TMP17 = COMPAT_TEXTURE(Texture, _c0155); 252 _TMP10 = _TMP17.xyz; 253 _c0159 = vec2(_xpos2.z, _ypos0147); 254 _TMP17 = COMPAT_TEXTURE(Texture, _c0159); 255 _TMP11 = _TMP17.xyz; 256 _c0163 = vec2(_xpos2.w, _ypos0147); 257 _TMP17 = COMPAT_TEXTURE(Texture, _c0163); 258 _r0165 = _linetaps1.x*_TMP9; 259 _r0165 = _r0165 + _linetaps1.y*_TMP10; 260 _r0165 = _r0165 + _linetaps1.z*_TMP11; 261 _r0165 = _r0165 + _linetaps1.w*_TMP17.xyz; 262 _r0167 = _columntaps.x*_r0105; 263 _r0167 = _r0167 + _columntaps.y*_r0125; 264 _r0167 = _r0167 + _columntaps.z*_r0145; 265 _r0167 = _r0167 + _columntaps.w*_r0165; 266 _OUT._color = vec4(_r0167.x, _r0167.y, _r0167.z, 1.00000000E+00); 267 FragColor = _OUT._color; 268 return; 269} 270#endif 271