Advertisement
Guest User

Untitled

a guest
Jul 9th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. //
  3. // Global variable definitions
  4. //
  5.  
  6. uniform vec4 color;
  7. uniform vec4 ddxUvDdyUv;
  8. uniform float strength;
  9. uniform sampler2D xlat_var_input;
  10.  
  11. //
  12. // Function declarations
  13. //
  14.  
  15. vec4 xlat_main( in vec2 uv );
  16.  
  17. //
  18. // Function definitions
  19. //
  20.  
  21. vec4 xlat_main( in vec2 uv ) {
  22.     float du;
  23.     float dv;
  24.     float du2;
  25.     float dv2;
  26.     float accum;
  27.     float t;
  28.     float t2;
  29.     vec4 outlineColor;
  30.     vec4 color_1;
  31.     float outA;
  32.  
  33.     du = ddxUvDdyUv.x ;
  34.     dv = ddxUvDdyUv.w ;
  35.     du2 = (du + du);
  36.     dv2 = (dv + dv);
  37.     accum = texture2D( xlat_var_input, (uv.xy  + vec2( du, dv))).w ;
  38.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( ( -du ), dv))).w ;
  39.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( du, ( -dv )))).w ;
  40.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( ( -du ), ( -dv )))).w ;
  41.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( du, 0.000000))).w ;
  42.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( ( -du ), 0.000000))).w ;
  43.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( 0.000000, dv))).w ;
  44.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( 0.000000, ( -dv )))).w ;
  45.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( du2, 0.000000))).w ;
  46.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( ( -du2 ), 0.000000))).w ;
  47.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( 0.000000, dv2))).w ;
  48.     accum += texture2D( xlat_var_input, (uv.xy  + vec2( 0.000000, ( -dv2 )))).w ;
  49.     accum /= 12.0000;
  50.     t = (((accum * 2.00000) * strength) - strength);
  51.     t2 = exp( (( -strength ) * strength) );
  52.     outlineColor = vec4( color.xyz , ((exp( (( -t ) * t) ) - t2) / (1.00000 - t2)));
  53.     color_1 = texture2D( xlat_var_input, uv);
  54.     outA = ((outlineColor.w  + color_1.w ) - (outlineColor.w  * color_1.w ));
  55.     return vec4( (((outlineColor.xyz  * outlineColor.w ) + (color_1.xyz  * (color_1.w  - (outlineColor.w  * color_1.w )))) * outA), outA);
  56. }
  57.  
  58.  
  59. //
  60. // Translator's entry point
  61. //
  62. void main() {
  63.     vec4 xlat_retVal;
  64.  
  65.     xlat_retVal = xlat_main( vec2(gl_TexCoord[0]));
  66.  
  67.     gl_FragData[0] = vec4( xlat_retVal);
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement