Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- shader_type spatial;
- render_mode unshaded, blend_add;
- uniform vec3 uv1_scale = vec3(1.0, 1.0, 1.0);
- uniform vec3 uv1_offset = vec3(0.0, 0.0, 0.0);
- uniform float variation = 0.0;
- varying float elapsed_time;
- void vertex() {
- elapsed_time = TIME;
- UV = UV*uv1_scale.xy+uv1_offset.xy;
- }
- float rand(vec2 x) {
- return fract(cos(mod(dot(x, vec2(13.9898, 8.141)), 3.14)) * 43758.5453);
- }
- vec2 rand2(vec2 x) {
- return fract(cos(mod(vec2(dot(x, vec2(13.9898, 8.141)),
- dot(x, vec2(3.4562, 17.398))), vec2(3.14))) * 43758.5453);
- }
- vec3 rand3(vec2 x) {
- return fract(cos(mod(vec3(dot(x, vec2(13.9898, 8.141)),
- dot(x, vec2(3.4562, 17.398)),
- dot(x, vec2(13.254, 5.867))), vec3(3.14))) * 43758.5453);
- }
- float param_rnd(float minimum, float maximum, float seed) {
- return minimum+(maximum-minimum)*rand(vec2(seed));
- }
- vec3 rgb2hsv(vec3 c) {
- vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
- vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);
- vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);
- float d = q.x - min(q.w, q.y);
- float e = 1.0e-10;
- return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
- }
- vec3 hsv2rgb(vec3 c) {
- vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
- vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
- return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
- }
- uniform sampler2D texture_1;
- const float texture_1_size = 1024.0;
- vec2 transform2_clamp(vec2 uv) {
- return clamp(uv, vec2(0.0), vec2(1.0));
- }
- vec2 transform2(vec2 uv, vec2 translate, float rotate, vec2 scale) {
- vec2 rv;
- uv -= translate;
- uv -= vec2(0.5);
- rv.x = cos(rotate)*uv.x + sin(rotate)*uv.y;
- rv.y = -sin(rotate)*uv.x + cos(rotate)*uv.y;
- rv /= scale;
- rv += vec2(0.5);
- return rv;
- }
- float pingpong(float a, float b)
- {
- return (b != 0.0) ? abs(fract((a - b) / (b * 2.0)) * b * 2.0 - b) : 0.0;
- }
- float smin(float d1, float d2, float k) {
- float h = clamp( 0.5 + 0.5*(d2-d1)/k, 0.0, 1.0 );
- return mix( d2, d1, h ) - k*h*(1.0-h);
- }
- float smax(float d1, float d2, float k) {
- float h = clamp( 0.5 - 0.5*(d2-d1)/k, 0.0, 1.0 );
- return mix( d2, d1, h ) + k*h*(1.0-h);
- }
- vec3 blend_normal(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*c1 + (1.0-opacity)*c2;
- }
- vec3 blend_dissolve(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- if (rand(uv) < opacity) {
- return c1;
- } else {
- return c2;
- }
- }
- vec3 blend_multiply(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*c1*c2 + (1.0-opacity)*c2;
- }
- vec3 blend_screen(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*(1.0-(1.0-c1)*(1.0-c2)) + (1.0-opacity)*c2;
- }
- float blend_overlay_f(float c1, float c2) {
- return (c1 < 0.5) ? (2.0*c1*c2) : (1.0-2.0*(1.0-c1)*(1.0-c2));
- }
- vec3 blend_overlay(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_overlay_f(c1.x, c2.x), blend_overlay_f(c1.y, c2.y), blend_overlay_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- vec3 blend_hard_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*0.5*(c1*c2+blend_overlay(uv, c1, c2, 1.0)) + (1.0-opacity)*c2;
- }
- float blend_soft_light_f(float c1, float c2) {
- return (c2 < 0.5) ? (2.0*c1*c2+c1*c1*(1.0-2.0*c2)) : 2.0*c1*(1.0-c2)+sqrt(c1)*(2.0*c2-1.0);
- }
- vec3 blend_soft_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_soft_light_f(c1.x, c2.x), blend_soft_light_f(c1.y, c2.y), blend_soft_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_burn_f(float c1, float c2) {
- return (c1==0.0)?c1:max((1.0-((1.0-c2)/c1)),0.0);
- }
- vec3 blend_burn(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_burn_f(c1.x, c2.x), blend_burn_f(c1.y, c2.y), blend_burn_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_dodge_f(float c1, float c2) {
- return (c1==1.0)?c1:min(c2/(1.0-c1),1.0);
- }
- vec3 blend_dodge(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_dodge_f(c1.x, c2.x), blend_dodge_f(c1.y, c2.y), blend_dodge_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- vec3 blend_lighten(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*max(c1, c2) + (1.0-opacity)*c2;
- }
- vec3 blend_darken(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*min(c1, c2) + (1.0-opacity)*c2;
- }
- vec3 blend_difference(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*clamp(c2-c1, vec3(0.0), vec3(1.0)) + (1.0-opacity)*c2;
- }
- vec3 blend_additive(vec2 uv, vec3 c1, vec3 c2, float oppacity) {
- return c2 + c1 * oppacity;
- }
- vec3 blend_addsub(vec2 uv, vec3 c1, vec3 c2, float oppacity) {
- return c2 + (c1 - .5) * 2.0 * oppacity;
- }
- float blend_linear_light_f(float c1, float c2) {
- return (c1 + 2.0 * c2) - 1.0;
- }
- vec3 blend_linear_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_linear_light_f(c1.x, c2.x), blend_linear_light_f(c1.y, c2.y), blend_linear_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_vivid_light_f(float c1, float c2) {
- return (c1 < 0.5) ? 1.0 - (1.0 - c2) / (2.0 * c1) : c2 / (2.0 * (1.0 - c1));
- }
- vec3 blend_vivid_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_vivid_light_f(c1.x, c2.x), blend_vivid_light_f(c1.y, c2.y), blend_vivid_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_pin_light_f( float c1, float c2) {
- return (2.0 * c1 - 1.0 > c2) ? 2.0 * c1 - 1.0 : ((c1 < 0.5 * c2) ? 2.0 * c1 : c2);
- }
- vec3 blend_pin_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_pin_light_f(c1.x, c2.x), blend_pin_light_f(c1.y, c2.y), blend_pin_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_hard_mix_f(float c1, float c2) {
- return floor(c1 + c2);
- }
- vec3 blend_hard_mix(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_hard_mix_f(c1.x, c2.x), blend_hard_mix_f(c1.y, c2.y), blend_hard_mix_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- float blend_exclusion_f(float c1, float c2) {
- return c1 + c2 - 2.0 * c1 * c2;
- }
- vec3 blend_exclusion(vec2 uv, vec3 c1, vec3 c2, float opacity) {
- return opacity*vec3(blend_exclusion_f(c1.x, c2.x), blend_exclusion_f(c1.y, c2.y), blend_exclusion_f(c1.z, c2.z)) + (1.0-opacity)*c2;
- }
- const float p_o553923_amount1 = 2.000000000;
- const float p_o553940_gradient_0_pos = 0.000000000;
- const vec4 p_o553940_gradient_0_col = vec4(0.000000000, 0.000000000, 0.000000000, 1.000000000);
- const float p_o553940_gradient_1_pos = 0.590909000;
- const vec4 p_o553940_gradient_1_col = vec4(0.925781012, 0.347167999, 0.000000000, 1.000000000);
- const float p_o553940_gradient_2_pos = 1.000000000;
- const vec4 p_o553940_gradient_2_col = vec4(1.000000000, 0.959716976, 0.531250000, 1.000000000);
- vec4 o553940_gradient_gradient_fct(float x) {
- if (x < p_o553940_gradient_0_pos) {
- return p_o553940_gradient_0_col;
- } else if (x < p_o553940_gradient_1_pos) {
- return mix(p_o553940_gradient_0_col, p_o553940_gradient_1_col, ((x-p_o553940_gradient_0_pos)/(p_o553940_gradient_1_pos-p_o553940_gradient_0_pos)));
- } else if (x < p_o553940_gradient_2_pos) {
- return mix(p_o553940_gradient_1_col, p_o553940_gradient_2_col, ((x-p_o553940_gradient_1_pos)/(p_o553940_gradient_2_pos-p_o553940_gradient_1_pos)));
- }
- return p_o553940_gradient_2_col;
- }
- const float p_o553914_default_in1 = 0.000000000;
- const float p_o553914_default_in2 = 0.350000000;
- const float p_o553913_default_in1 = 0.000000000;
- const float p_o553913_default_in2 = 0.000000000;
- const float p_o553913_k = 1.000000000;
- const float p_o553911_default_in1 = 0.000000000;
- const float p_o553911_default_in2 = 0.000000000;
- const float p_o553910_default_in1 = 0.000000000;
- const float p_o553910_default_in2 = 0.610000000;
- const float p_o553893_radius = 1.660000000;
- const float p_o553893_repeat = 5.000000000;
- const float p_o553892_amount = 1.000000000;
- const float p_o553892_center = 0.000000000;
- const float p_o553939_translate_x = 0.000000000;
- const float p_o553939_rotate = 0.000000000;
- const float p_o553939_scale_x = 1.000000000;
- const float p_o553939_scale_y = 1.000000000;
- const float p_o553912_default_in1 = 0.000000000;
- const float p_o553912_default_in2 = 0.000000000;
- const float p_o553954_value = 0.347500000;
- const float p_o553954_width = 1.000000000;
- const float p_o553954_contrast = 0.030000000;
- const float p_o553897_repeat = 1.000000000;
- const float p_o553897_gradient_0_pos = 0.000000000;
- const vec4 p_o553897_gradient_0_col = vec4(0.000000000, 0.000000000, 0.000000000, 1.000000000);
- const float p_o553897_gradient_1_pos = 0.918479000;
- const vec4 p_o553897_gradient_1_col = vec4(1.000000000, 1.000000000, 1.000000000, 1.000000000);
- vec4 o553897_gradient_gradient_fct(float x) {
- if (x < p_o553897_gradient_0_pos) {
- return p_o553897_gradient_0_col;
- } else if (x < p_o553897_gradient_1_pos) {
- return mix(p_o553897_gradient_0_col, p_o553897_gradient_1_col, ((x-p_o553897_gradient_0_pos)/(p_o553897_gradient_1_pos-p_o553897_gradient_0_pos)));
- }
- return p_o553897_gradient_1_col;
- }
- const float p_o553915_value = 0.380500000;
- const float p_o553915_width = 0.070000000;
- const float p_o553915_contrast = -2.550000000;
- const float p_o553924_translate_x = 0.028750000;
- const float p_o553924_translate_y = 0.028750000;
- const float p_o553919_count = 12.000000000;
- const float p_o553919_width = 10.000000000;
- const float p_o553925_value = 0.180000000;
- const float p_o553925_width = 0.310000000;
- const float p_o553926_gradient_0_pos = 0.000000000;
- const vec4 p_o553926_gradient_0_col = vec4(0.000000000, 0.000000000, 0.000000000, 1.000000000);
- const float p_o553926_gradient_1_pos = 1.000000000;
- const vec4 p_o553926_gradient_1_col = vec4(0.945312023, 0.192276001, 0.092316002, 1.000000000);
- vec4 o553926_gradient_gradient_fct(float x) {
- if (x < p_o553926_gradient_0_pos) {
- return p_o553926_gradient_0_col;
- } else if (x < p_o553926_gradient_1_pos) {
- return mix(p_o553926_gradient_0_col, p_o553926_gradient_1_col, ((x-p_o553926_gradient_0_pos)/(p_o553926_gradient_1_pos-p_o553926_gradient_0_pos)));
- }
- return p_o553926_gradient_1_col;
- }
- vec4 o553919_input_in(vec2 uv, float _seed_variation_) {
- vec4 o553916_0 = textureLod(texture_1, (transform2(((vec2(fract(p_o553893_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o553893_radius*length((uv)-vec2(0.5)))))+p_o553892_amount*((vec2(fract(p_o553893_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o553893_radius*length((uv)-vec2(0.5))))).yx-vec2(p_o553892_center))*vec2(1.0, 0.0)), vec2(p_o553939_translate_x*(2.0*1.0-1.0), (-elapsed_time*.5)*(2.0*1.0-1.0)), p_o553939_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o553939_scale_x*(2.0*1.0-1.0), p_o553939_scale_y*(2.0*1.0-1.0)))), 0.0);
- vec4 o553939_0_1_rgba = o553916_0;
- vec4 o553892_0_1_rgba = o553939_0_1_rgba;
- vec4 o553893_0_1_rgba = o553892_0_1_rgba;
- float o553896_0_1_f = o553893_0_1_rgba.r;
- float o553910_0_clamp_false = o553896_0_1_f-p_o553910_default_in2;
- float o553910_0_clamp_true = clamp(o553910_0_clamp_false, 0.0, 1.0);
- float o553910_0_2_f = o553910_0_clamp_false;
- float o553896_1_2_f = o553893_0_1_rgba.g;
- vec4 o553897_0_1_rgba = o553897_gradient_gradient_fct(fract(p_o553897_repeat*1.41421356237*length(fract((uv))-vec2(0.5, 0.5))));
- float o553954_0_step = clamp(((dot((o553897_0_1_rgba).rgb, vec3(1.0))/3.0) - (p_o553954_value))/max(0.0001, p_o553954_width)+0.5, 0.0, 1.0);
- float o553954_0_false = clamp((min(o553954_0_step, 1.0-o553954_0_step) * 2.0) / (1.0 - p_o553954_contrast), 0.0, 1.0);
- float o553954_0_true = 1.0-o553954_0_false;float o553954_0_1_f = o553954_0_true;
- float o553912_0_clamp_false = o553896_1_2_f-o553954_0_1_f;
- float o553912_0_clamp_true = clamp(o553912_0_clamp_false, 0.0, 1.0);
- float o553912_0_1_f = o553912_0_clamp_false;
- float o553911_0_clamp_false = min(o553910_0_2_f,o553912_0_1_f);
- float o553911_0_clamp_true = clamp(o553911_0_clamp_false, 0.0, 1.0);
- float o553911_0_1_f = o553911_0_clamp_false;
- float o553915_0_step = ((dot((o553897_0_1_rgba).rgb, vec3(1.0))/3.0) - (p_o553915_value))/max(0.0001, p_o553915_width)+0.5;
- float o553915_0_false = (min(o553915_0_step, 1.0-o553915_0_step) * 2.0) / (1.0 - p_o553915_contrast);
- float o553915_0_true = 1.0-o553915_0_false;float o553915_0_1_f = false ? clamp(o553915_0_false,0.0,1.0) : o553915_0_false;
- float o553913_0_clamp_false = smax(o553911_0_1_f, o553915_0_1_f, p_o553913_k);
- float o553913_0_clamp_true = clamp(o553913_0_clamp_false, 0.0, 1.0);float o553913_0_1_f = o553913_0_clamp_false;
- float o553914_0_clamp_false = o553913_0_1_f/p_o553914_default_in2;
- float o553914_0_clamp_true = clamp(o553914_0_clamp_false, 0.0, 1.0);
- float o553914_0_2_f = o553914_0_clamp_false;
- vec4 o553926_0_1_rgba = o553926_gradient_gradient_fct(o553914_0_2_f);
- vec3 o553925_0_false = clamp((o553926_0_1_rgba.rgb-vec3(p_o553925_value))/max(0.0001, p_o553925_width)+vec3(0.5), vec3(0.0), vec3(1.0));
- vec3 o553925_0_true = vec3(1.0)-o553925_0_false;vec4 o553925_0_1_rgba = vec4(o553925_0_false, o553926_0_1_rgba.a);
- return o553925_0_1_rgba;
- }
- vec4 supersample_o553919(vec2 uv, float size, int count, float width, float _seed_variation_) {
- vec4 rv = vec4(0.0);
- vec2 step_size = vec2(width)/size/float(count);
- uv -= vec2(0.5)/size;
- for (int x = 0; x < count; ++x) {
- for (int y = 0; y < count; ++y) {
- rv += o553919_input_in(uv+(vec2(float(x), float(y))+vec2(0.5))*step_size, _seed_variation_);
- }
- }
- return rv/float(count*count);
- }
- void fragment() {
- float _seed_variation_ = variation;
- vec2 uv = fract(UV);
- vec4 o553916_0 = textureLod(texture_1, (transform2(((vec2(fract(p_o553893_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o553893_radius*length((uv)-vec2(0.5)))))+p_o553892_amount*((vec2(fract(p_o553893_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o553893_radius*length((uv)-vec2(0.5))))).yx-vec2(p_o553892_center))*vec2(1.0, 0.0)), vec2(p_o553939_translate_x*(2.0*1.0-1.0), (-elapsed_time*.5)*(2.0*1.0-1.0)), p_o553939_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o553939_scale_x*(2.0*1.0-1.0), p_o553939_scale_y*(2.0*1.0-1.0)))), 0.0);
- vec4 o553939_0_1_rgba = o553916_0;
- vec4 o553892_0_1_rgba = o553939_0_1_rgba;
- vec4 o553893_0_1_rgba = o553892_0_1_rgba;
- float o553896_0_1_f = o553893_0_1_rgba.r;
- float o553910_0_clamp_false = o553896_0_1_f-p_o553910_default_in2;
- float o553910_0_clamp_true = clamp(o553910_0_clamp_false, 0.0, 1.0);
- float o553910_0_2_f = o553910_0_clamp_false;
- float o553896_1_2_f = o553893_0_1_rgba.g;
- vec4 o553897_0_1_rgba = o553897_gradient_gradient_fct(fract(p_o553897_repeat*1.41421356237*length(fract((uv))-vec2(0.5, 0.5))));
- float o553954_0_step = clamp(((dot((o553897_0_1_rgba).rgb, vec3(1.0))/3.0) - (p_o553954_value))/max(0.0001, p_o553954_width)+0.5, 0.0, 1.0);
- float o553954_0_false = clamp((min(o553954_0_step, 1.0-o553954_0_step) * 2.0) / (1.0 - p_o553954_contrast), 0.0, 1.0);
- float o553954_0_true = 1.0-o553954_0_false;float o553954_0_1_f = o553954_0_true;
- float o553912_0_clamp_false = o553896_1_2_f-o553954_0_1_f;
- float o553912_0_clamp_true = clamp(o553912_0_clamp_false, 0.0, 1.0);
- float o553912_0_1_f = o553912_0_clamp_false;
- float o553911_0_clamp_false = min(o553910_0_2_f,o553912_0_1_f);
- float o553911_0_clamp_true = clamp(o553911_0_clamp_false, 0.0, 1.0);
- float o553911_0_1_f = o553911_0_clamp_false;
- float o553915_0_step = ((dot((o553897_0_1_rgba).rgb, vec3(1.0))/3.0) - (p_o553915_value))/max(0.0001, p_o553915_width)+0.5;
- float o553915_0_false = (min(o553915_0_step, 1.0-o553915_0_step) * 2.0) / (1.0 - p_o553915_contrast);
- float o553915_0_true = 1.0-o553915_0_false;float o553915_0_1_f = false ? clamp(o553915_0_false,0.0,1.0) : o553915_0_false;
- float o553913_0_clamp_false = smax(o553911_0_1_f, o553915_0_1_f, p_o553913_k);
- float o553913_0_clamp_true = clamp(o553913_0_clamp_false, 0.0, 1.0);float o553913_0_1_f = o553913_0_clamp_false;
- float o553914_0_clamp_false = o553913_0_1_f/p_o553914_default_in2;
- float o553914_0_clamp_true = clamp(o553914_0_clamp_false, 0.0, 1.0);
- float o553914_0_2_f = o553914_0_clamp_false;
- vec4 o553940_0_1_rgba = o553940_gradient_gradient_fct(o553914_0_2_f);
- vec4 o553919_0_1_rgba = supersample_o553919(((uv)-vec2(p_o553924_translate_x, p_o553924_translate_y)), 128.000000000, int(p_o553919_count), p_o553919_width, _seed_variation_);
- vec4 o553924_0_1_rgba = o553919_0_1_rgba;
- vec4 o553923_0_b = o553940_0_1_rgba;
- vec4 o553923_0_l;
- float o553923_0_a;
- o553923_0_l = o553924_0_1_rgba;
- o553923_0_a = p_o553923_amount1*1.0;
- o553923_0_b = vec4(blend_additive((uv), o553923_0_l.rgb, o553923_0_b.rgb, o553923_0_a*o553923_0_l.a), min(1.0, o553923_0_b.a+o553923_0_a*o553923_0_l.a));
- vec4 o553923_0_2_rgba = o553923_0_b;
- vec4 color_tex = o553923_0_2_rgba;
- color_tex = mix(pow((color_tex + vec4(0.055)) * (1.0 / (1.0 + 0.055)),vec4(2.4)),color_tex * (1.0 / 12.92),lessThan(color_tex,vec4(0.04045)));
- ALBEDO = color_tex.rgb;
- ALPHA = color_tex.a;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement