{"version":2,"baseVals":{"rating":4,"gammaadj":1.98,"decay":0.5,"echo_zoom":1,"echo_alpha":0.5,"echo_orient":3,"wave_mode":4,"additivewave":1,"wave_thick":1,"modwavealphabyvolume":1,"wave_brighten":0,"darken":1,"wave_a":0.001,"wave_scale":0.527,"wave_smoothing":0.45,"modwavealphastart":0,"modwavealphaend":1.32,"warpanimspeed":1.459,"warpscale":2.007,"zoom":0.9999,"warp":0.01,"sx":0.9999,"wave_r":0.8,"wave_g":0.49,"ob_size":0.015,"ob_a":1,"ib_size":0.26,"mv_x":64,"mv_y":48,"mv_l":1.85,"mv_r":0.5,"mv_g":0.5,"mv_b":0.5,"mv_a":0,"b2x":0.3,"b1ed":0},"shapes":[{"baseVals":{"additive":1,"textured":1,"rad":2.37185,"tex_ang":1.5708,"tex_zoom":0.93101,"r":0,"g":1,"b":1,"a":0.4,"border_b":0,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"sides":12,"additive":1,"textured":1,"x":0.3,"y":0.8,"rad":1.06345,"tex_ang":1.63363,"tex_zoom":0.46617,"g":1,"g2":0,"a2":1,"border_g":0,"border_b":0,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"sides":13,"additive":1,"num_inst":5,"x":0.65,"y":0.38,"rad":0.57049,"tex_zoom":0.73678,"a":0.7,"g2":0,"border_r":0.5,"border_g":0.5,"border_b":0,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""},{"baseVals":{"sides":14,"additive":1,"thickoutline":1,"textured":1,"x":0.6,"y":0.55,"rad":0.97237,"ang":1.25664,"tex_zoom":0.34933,"g":0.6,"g2":0,"b2":1,"border_r":0.2,"border_g":0.7,"border_b":0.5,"border_a":0,"enabled":0},"init_eqs_eel":"","frame_eqs_eel":""}],"waves":[{"baseVals":{"enabled":1,"samples":506,"sep":116,"spectrum":1,"thick":1,"scaling":1.07408,"smoothing":0,"a":0.7},"init_eqs_eel":"","frame_eqs_eel":"","point_eqs_eel":"\nn = int((reg00+.5)*sample);\n\nm = 30001+n/(reg00/reg01);\ngmegabuf(m) = (value1+value2);\n\nx = gmegabuf(10000+n);\ny = gmegabuf(15000+n);\na = gmegabuf(20000+n);\n\nb = min(max(gmegabuf(25000+n),0),1);\nr = 1-b; \ng = 0.5;"},{"baseVals":{"enabled":1,"samples":506,"thick":1,"scaling":0.89152,"smoothing":0.82},"init_eqs_eel":"","frame_eqs_eel":"","point_eqs_eel":"n = int((reg00+.5)*sample) +reg00;\n\nx = gmegabuf(10000+n);\ny = gmegabuf(15000+n);\na = gmegabuf(20000+n);\n\nb = min(max(gmegabuf(25000+n),0),1);\nr = 1-b; \ng = 0.5;"},{"baseVals":{"enabled":1,"samples":506,"thick":1,"scaling":0.89152,"smoothing":0.82},"init_eqs_eel":"","frame_eqs_eel":"","point_eqs_eel":"n = int((reg00+.5)*sample)+2*reg00;\n\n\nx = gmegabuf(10000+n);\ny = gmegabuf(15000+n);\na = gmegabuf(20000+n);\n\nb = min(max(gmegabuf(25000+n),0),1);\nr = 1-b; \ng = 0.5;\n"},{"baseVals":{"enabled":1,"samples":506,"spectrum":1,"thick":1},"init_eqs_eel":"","frame_eqs_eel":"","point_eqs_eel":"n = int((reg00-.5)*sample)+3*reg00;\n\n\nx = gmegabuf(10000+n);\ny = gmegabuf(15000+n);\na = gmegabuf(20000+n);\n\nb = min(max(gmegabuf(25000+n),0),1);\nr = 1-b; \ng = 0.5;"}],"init_eqs_eel":"index = 0;\nloop (70000,\n megabuf(index) = 0;\n gmegabuf(index) = 0;\n index = index + 1;\n);\n\nzang = 1;\n\nyang = 0;\nzang = 2;","frame_eqs_eel":"xlen = 45; ylen = 45; flen = 30; reg00 = xlen*ylen/4; reg01=reg00/4;\ndec_med = 1-0.06*30/fps; dec_slow = 1-0.02*30/fps; dec_f = pow (0.8, 30/fps);\nq30 = dec_slow;\nsmooth = max(1,pow(6,fps/30)-2); // >= 0; Ausbreitungsgeschwindigkeit\n\n//\"Classic\" beat reaction\ncbeat = bass+mid+treb;\ndecc = if (vol>cbeat,0.8,dec_med);\nvol = vol * decc + (1-decc)*cbeat;\navg = avg*dec_slow + cbeat*(1-dec_slow);\nis_beat = above(cbeat, 1.5*avg) * above (time, tc0+.2);\ntc0 = if (bor(is_beat, bd_bt),time,tc0);\npeak = if (is_beat,cbeat,peak*dec_med);\n\n\n//Gleichanteil entfernen und normalisieren\nind = 0; sum = 0; amp = 0.01;\nloop (reg01,\n sum = sum + gmegabuf(ind+30000)/(reg01);\n amp = amp + pow(gmegabuf(ind+30000),2);\n ind = ind+1;\n); \nind = 0; amp_= amp_*dec_med + (1-dec_med)*sqrt(amp)/reg01*600;\nloop (reg01,\n megabuf(ind+30000)= (gmegabuf(ind+30000)-sum)/amp_;\n ind = ind+1;\n);\n \n// Spectrum of spectrum !\nindex2 = 0;\nloop(flen, //Frequency step\n index=0; real= 0; imag = 0;\n loop (flen,\n real = real + cos(index/flen*6.28*index2)*megabuf(index*reg01/8+30002);\n imag = imag + sin(index/flen*6.28*index2)*megabuf(index*reg01/8+30002);\n index=index+1;\n );\n megabuf(10000+index2)= megabuf(10000+index2) * dec_f + real;\n megabuf(15000+index2)= megabuf(15000+index2) * dec_f + imag;\n index2 = index2+1;\n );\n\n//Anregung\nind = 1;\nloop (flen/2,\n cx = megabuf(10000+ind);\n cy = megabuf(15000+ind);\n yind = -1;\n loop (3,\n xind = -1;\n loop (3,\n ox = ((cx+.5)*xlen+xind)%xlen;\n oy = ((cy+.5)*ylen+yind)%ylen;\n amp = (cx*cx+cy*cy)*3;\n megabuf (oy*ylen+ox) = megabuf (oy*ylen+ox) \n - 2*30/fps*sqrt(amp)*above(amp,.02)/(1+xind*xind+yind*yind);\n xind = xind+1;\n );\n yind = yind+1;\n );\n ind = ind+1;\n);\n\n//Simulation\nyind = 0;\nloop (ylen,\n xind = 0;\n loop (xlen,\n megabuf(yind*ylen+xind+5000) = //megabuf ab 5000 ist nur Zwischenspeicher\n dec_med*((gmegabuf(yind*ylen+(xind+1)%xlen) +\n gmegabuf(yind*ylen+(xlen+xind-1)%xlen) + \n gmegabuf(((yind+1)%ylen)*ylen+xind) + \n gmegabuf(((yind+ylen-1)%ylen)*ylen+xind)\n +gmegabuf(yind*ylen+xind)*smooth*4)/(2+2*smooth) - megabuf(yind*ylen+xind)); \n xind = xind+1;\n );\n yind = yind+1;\n);\n\n//Projektionsparameter\n\nbindex += is_beat;\nif (is_beat && (bindex%4==0), ran2 = (rand(100)-30)/60,0 );\nif (is_beat && (bindex%4==2), ran3 = (rand(100)-30)/60,0 );\nif (is_beat && (bindex%6==2), ran4 = (rand(100)-30)/60,0 );\ndec_v = min(max(0, 1-8*vol/fps),dec_slow);\nran2_ = ran2_ * dec_v + (1-dec_v)*ran2;\nran3_ = ran3_ * dec_v + (1-dec_v)*ran3;\nran4_ = ran4_ * dec_v + (1-dec_v)*ran4;\ntrelx += ran2_/fps/7;\ntrely += ran3_/fps/2;\ntrelz += ran4_/fps/6;\nzang = 6*sin(trelz);\nxang = 6*sin(zang/5+trelx);\nyang = 6*sin(zang/3*0+trely);\n\nq1 = cos(xang);q2 = sin(xang);q3 = cos(yang);\nq4 = sin(yang);q5 = cos(zang);q6 = sin(zang);\nfov = 1;\n\n//Umkopieren und Projektion\nyind = 0;\nloop (ylen,\n xind = 0;\n loop (xlen,\n ind = yind*ylen+xind;\n megabuf(ind) = gmegabuf(ind); \n gmegabuf(ind) = megabuf(ind+5000); \n oz = yind - ylen/2; //#\n ox = if(bnot(yind%2),xind,xlen-xind-1);\n oy0a = (oy0+oy0a)/2.5;\n oy = gmegabuf(yind*ylen+ox); oy0 = oy;\n ox = ox - xlen/2; \n mx = ox*q5 - oy*q6; my = ox*q6 + oy*q5;\n ox = mx; oy = my; \n mx = ox*q3 + oz*q4; mz = - ox*q4 + oz*q3;\n ox = mx; oz = mz; \n my = oy*q1 - oz*q2; mz = oy*q2 + oz*q1;\n z0 = 90+40*sin(trelz*14);\n oy = my; oz = mz+z0;\n gmegabuf(10000+ind) = fov*ox/(oz)+.5;\n gmegabuf(15000+ind) = fov*oy/(oz)+.5;\n hell= max(min(.5+oy0/4,1),0.1); //Helligkeit\n gmegabuf(20000+ind) = max(min(hell* (.5+ (oy0a-oy0)*0.1),1),0.1) ;\n gmegabuf(25000+ind) = oy0/16+.5;;\n xind = xind+1;\n );\n yind = yind+1;\n);\n\nq29 = fov*50/z0;\nq32 = aspecty;\nq28 = min (vol/3-0.3,1);\nmonitor = is_beat;","pixel_eqs_eel":"rot = 0; zoom = 1.1; warp = 0; dy = 0.02;","warp":" shader_body { \n vec4 tmpvar_1;\n tmpvar_1.w = 1.0;\n tmpvar_1.xyz = vec3(0.0, 0.0, 0.0);\n ret = tmpvar_1.xyz;\n }","comp":"vec3 xlat_mutablecol;\n shader_body { \n vec2 uv_1;\n uv_1 = uv;\n int iter_3;\n vec3 ret_4;\n ret_4 = texture (sampler_main, uv).xyz;\n iter_3 = int((clamp (q29, 0.0, 1.0) * 8.0));\n for (int n_2 = 1; n_2 < iter_3; n_2++) {\n vec2 tmpvar_5;\n tmpvar_5.y = 0.0;\n tmpvar_5.x = float(n_2);\n vec2 tmpvar_6;\n tmpvar_6.y = 0.0;\n tmpvar_6.x = float(n_2);\n ret_4 = max (max (ret_4, texture (sampler_main, (uv_1 - \n (texsize.zw * tmpvar_5)\n )).xyz), texture (sampler_main, (uv_1 + (texsize.zw * tmpvar_6))).xyz);\n };\n float tmpvar_7;\n tmpvar_7 = clamp ((1.0 - (2.0 * \n dot (ret_4, vec3(0.32, 0.49, 0.29))\n )), 0.0, 1.0);\n float tmpvar_8;\n float tmpvar_9;\n tmpvar_9 = (uv.x - 0.5);\n tmpvar_8 = (0.5 / ((\n (uv.y + ((tmpvar_9 * 1.4) * (q5 * q3)))\n - 0.4) + (0.3 * q4)));\n vec2 tmpvar_10;\n tmpvar_10.x = (tmpvar_8 * tmpvar_9);\n tmpvar_10.y = tmpvar_8;\n vec3 tmpvar_11;\n tmpvar_11.x = q2;\n tmpvar_11.y = q4;\n tmpvar_11.z = q6;\n xlat_mutablecol = (0.5 + (0.5 * tmpvar_11));\n float x_12;\n x_12 = ((uv.x - (\n dot (ret_4, vec3(0.32, 0.49, 0.29))\n * 5.0)) + 0.5);\n ret_4 = (ret_4 * (q28 + (\n ((6.0 * (0.05 / sqrt(\n (x_12 * x_12)\n ))) * (1.0 + xlat_mutablecol))\n / 2.0)));\n vec2 tmpvar_13;\n tmpvar_13.x = q1;\n tmpvar_13.y = (q3 + time);\n float tmpvar_14;\n tmpvar_14 = (((\n (texture (sampler_noise_lq, (tmpvar_10 + tmpvar_13)).x * tmpvar_7)\n * \n float((tmpvar_8 > 0.0))\n ) * 0.2) * min (1.0, (1.0/(tmpvar_8))));\n ret_4 = (ret_4 + tmpvar_14);\n ret_4 = (ret_4 + ((\n (sin((12.0 * q2)) * tmpvar_7)\n * tmpvar_14) * dot (\n (12.0 * ((texture (sampler_blur1, (tmpvar_10 - vec2(-0.5, 0.3))).xyz * scale1) + bias1))\n , vec3(0.32, 0.49, 0.29))));\n ret_4 = (ret_4 + ((\n ((0.5 / abs(tmpvar_8)) * normalize(xlat_mutablecol))\n * \n float((tmpvar_8 < 0.0))\n ) * tmpvar_7));\n vec4 tmpvar_15;\n tmpvar_15.w = 1.0;\n tmpvar_15.xyz = ret_4;\n ret = tmpvar_15.xyz;\n }"}