Advertisement
Guest User

crt-hyllian-lq.glsl

a guest
Mar 7th, 2015
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.09 KB | None | 0 0
  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
  19. COMPAT_VARYING vec2 VARtexCoord;
  20.  
  21. COMPAT_VARYING float _frame_rotation;
  22.  
  23.  
  24.  
  25.  
  26.  
  27. struct input_dummy {
  28.  
  29. vec2 _video_size;
  30.  
  31. vec2 _texture_size;
  32.  
  33. vec2 _output_dummy_size;
  34.  
  35. float _frame_count;
  36.  
  37. float _frame_direction;
  38.  
  39. float _frame_rotation;
  40.  
  41. };
  42.  
  43.  
  44.  
  45. struct out_vertex {
  46.  
  47. vec2 VARtexCoord;
  48.  
  49. };
  50.  
  51.  
  52.  
  53. vec4 _oPosition1;
  54.  
  55. out_vertex _ret_0;
  56.  
  57.  
  58.  
  59. input_dummy _IN1;
  60.  
  61. vec4 _r0008;
  62.  
  63. COMPAT_ATTRIBUTE vec4 VertexCoord;
  64.  
  65. COMPAT_ATTRIBUTE vec4 TexCoord;
  66.  
  67.  
  68.  
  69.  
  70. uniform mat4 MVPMatrix;
  71. uniform int FrameDirection;
  72. uniform int FrameCount;
  73. uniform COMPAT_PRECISION vec2 OutputSize;
  74. uniform COMPAT_PRECISION vec2 TextureSize;
  75. uniform COMPAT_PRECISION vec2 InputSize;
  76. void main()
  77.  
  78. {
  79.  
  80.  
  81.  
  82. vec2 _ps;
  83.  
  84. out_vertex _TMP3;
  85.  
  86.  
  87.  
  88. _ps = 1.00000000E+000/TextureSize;
  89.  
  90. _r0008 = VertexCoord.x*MVPMatrix[0];
  91.  
  92. _r0008 = _r0008 + VertexCoord.y*MVPMatrix[1];
  93.  
  94. _r0008 = _r0008 + VertexCoord.z*MVPMatrix[2];
  95.  
  96. _r0008 = _r0008 + VertexCoord.w*MVPMatrix[3];
  97.  
  98. _oPosition1 = _r0008;
  99.  
  100. _TMP3.VARtexCoord = TexCoord.xy + _ps*vec2( -4.90000010E-001, 0.00000000E+000);
  101.  
  102. VARtexCoord = _TMP3.VARtexCoord;
  103.  
  104. gl_Position = _r0008;
  105.  
  106. return;
  107.  
  108. }
  109. #elif defined(FRAGMENT)
  110.  
  111. #if __VERSION__ >= 130
  112. #define COMPAT_VARYING in
  113. #define COMPAT_TEXTURE texture
  114. out vec4 FragColor;
  115. #else
  116. #define COMPAT_VARYING varying
  117. #define FragColor gl_FragColor
  118. #define COMPAT_TEXTURE texture2D
  119. #endif
  120.  
  121. #ifdef GL_ES
  122. #ifdef GL_FRAGMENT_PRECISION_HIGH
  123. precision highp float;
  124. #else
  125. precision mediump float;
  126. #endif
  127. #define COMPAT_PRECISION mediump
  128. #else
  129. #define COMPAT_PRECISION
  130. #endif
  131. COMPAT_VARYING vec2 VARtexCoord;
  132.  
  133. COMPAT_VARYING float _frame_rotation;
  134.  
  135.  
  136.  
  137.  
  138.  
  139. struct input_dummy {
  140.  
  141. vec2 _video_size;
  142.  
  143. vec2 _texture_size;
  144.  
  145. vec2 _output_dummy_size;
  146.  
  147. float _frame_count;
  148.  
  149. float _frame_direction;
  150.  
  151. float _frame_rotation;
  152.  
  153. };
  154.  
  155.  
  156.  
  157. struct out_vertex {
  158.  
  159. vec2 VARtexCoord;
  160.  
  161. };
  162.  
  163.  
  164.  
  165. vec4 _ret_0;
  166.  
  167. vec3 _TMP6;
  168.  
  169. float _TMP9;
  170.  
  171. float _TMP8;
  172.  
  173. float _TMP7;
  174.  
  175. float _TMP5;
  176.  
  177. float _TMP10;
  178.  
  179. vec4 _TMP4;
  180.  
  181. vec4 _TMP3;
  182.  
  183. vec4 _TMP2;
  184.  
  185. vec4 _TMP1;
  186.  
  187. vec2 _TMP0;
  188.  
  189. out_vertex _VAR1;
  190.  
  191. uniform sampler2D Texture;
  192.  
  193. input_dummy _IN1;
  194.  
  195. vec2 _x0019;
  196.  
  197. vec2 _x0021;
  198.  
  199. vec2 _c0023;
  200.  
  201. vec2 _c0027;
  202.  
  203. vec2 _c0029;
  204.  
  205. vec4 _r0031;
  206.  
  207. vec4 _v0031;
  208.  
  209. vec3 _r0041;
  210.  
  211. float _a0051;
  212.  
  213. float _x0053;
  214.  
  215. float _TMP56;
  216.  
  217.  
  218.  
  219.  
  220. uniform int FrameDirection;
  221. uniform int FrameCount;
  222. uniform COMPAT_PRECISION vec2 OutputSize;
  223. uniform COMPAT_PRECISION vec2 TextureSize;
  224. uniform COMPAT_PRECISION vec2 InputSize;
  225. void main()
  226.  
  227. {
  228.  
  229.  
  230.  
  231. vec2 _dx;
  232.  
  233. vec2 _tc;
  234.  
  235. vec2 _fp;
  236.  
  237. vec3 _color;
  238.  
  239. float _d;
  240.  
  241.  
  242.  
  243. _dx = vec2(1.00000000E+000/TextureSize.x, 0.00000000E+000);
  244.  
  245. _x0019 = VARtexCoord*TextureSize;
  246.  
  247. _TMP0 = floor(_x0019);
  248.  
  249. _tc = (_TMP0 + vec2( 5.00000000E-001, 5.00000000E-001))/TextureSize;
  250.  
  251. _x0021 = VARtexCoord*TextureSize;
  252.  
  253. _fp = fract(_x0021);
  254.  
  255. _c0023 = _tc - _dx;
  256.  
  257. _TMP1 = COMPAT_TEXTURE(Texture, _c0023);
  258.  
  259. _TMP2 = COMPAT_TEXTURE(Texture, _tc);
  260.  
  261. _c0027 = _tc + _dx;
  262.  
  263. _TMP3 = COMPAT_TEXTURE(Texture, _c0027);
  264.  
  265. _c0029 = _tc + 2.00000000E+000*_dx;
  266.  
  267. _TMP4 = COMPAT_TEXTURE(Texture, _c0029);
  268.  
  269. _v0031 = vec4(_fp.x*_fp.x*_fp.x, _fp.x*_fp.x, _fp.x, 1.00000000E+000);
  270.  
  271. _r0031.x = dot(vec4( -5.00000000E-001, 1.00000000E+000, -5.00000000E-001, 0.00000000E+000), _v0031);
  272.  
  273. _r0031.y = dot(vec4( 1.50000000E+000, -2.50000000E+000, 0.00000000E+000, 1.00000000E+000), _v0031);
  274.  
  275. _r0031.z = dot(vec4( -1.50000000E+000, 2.00000000E+000, 5.00000000E-001, 0.00000000E+000), _v0031);
  276.  
  277. _r0031.w = dot(vec4( 5.00000000E-001, -5.00000000E-001, 0.00000000E+000, 0.00000000E+000), _v0031);
  278.  
  279. _r0041 = _r0031.x*_TMP1.xyz;
  280.  
  281. _r0041 = _r0041 + _r0031.y*_TMP2.xyz;
  282.  
  283. _r0041 = _r0041 + _r0031.z*_TMP3.xyz;
  284.  
  285. _r0041 = _r0041 + _r0031.w*_TMP4.xyz;
  286.  
  287. _TMP7 = pow(_r0041.x, 2.40000010E+000);
  288.  
  289. _TMP8 = pow(_r0041.y, 2.40000010E+000);
  290.  
  291. _TMP9 = pow(_r0041.z, 2.40000010E+000);
  292.  
  293. _color = vec3(_TMP7, _TMP8, _TMP9);
  294.  
  295. _a0051 = _fp.y - 5.00000000E-001;
  296.  
  297. _TMP5 = abs(_a0051);
  298.  
  299. _x0053 = 1.00000000E+000 - _TMP5;
  300.  
  301. _TMP10 = min(1.00000000E+000, _x0053);
  302.  
  303. _TMP56 = max(0.00000000E+000, _TMP10);
  304.  
  305. _d = _TMP56*_TMP56*(3.00000000E+000 - 2.00000000E+000*_TMP56);
  306.  
  307. _color = _color*_d;
  308.  
  309. _TMP7 = pow(_color.x, 4.54545438E-001);
  310.  
  311. _TMP8 = pow(_color.y, 4.54545438E-001);
  312.  
  313. _TMP9 = pow(_color.z, 4.54545438E-001);
  314.  
  315. _TMP6 = vec3(_TMP7, _TMP8, _TMP9);
  316.  
  317. _ret_0 = vec4(_TMP6.x, _TMP6.y, _TMP6.z, 1.00000000E+000);
  318.  
  319. FragColor = _ret_0;
  320.  
  321. return;
  322.  
  323. }
  324. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement