MILKDROP_PRESET_VERSION=201
PSVERSION=2
PSVERSION_WARP=2
PSVERSION_COMP=2
[preset00]
fRating=4.0
fGammaAdj=2.0
fDecay=1.0
fVideoEchoZoom=0.999609
fVideoEchoAlpha=0.5
nVideoEchoOrientation=2
nWaveMode=1
bAdditiveWaves=0
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=0
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=0.001000
fWaveScale=1.0
fWaveSmoothing=0.750000
fWaveParam=0.0
fModWaveAlphaStart=0.750000
fModWaveAlphaEnd=0.950000
fWarpAnimSpeed=1.0
fWarpScale=1.0
fZoomExponent=1.0
fShader=0.0
zoom=0.960000
rot=0.0
cx=0.5
cy=0.5
dx=0.0
dy=0.0
warp=0.000521
sx=1.0
sy=1.0
wave_r=0.0
wave_g=0.0
wave_b=0.0
wave_x=0.5
wave_y=0.5
ob_size=0.010000
ob_r=1.0
ob_g=1.0
ob_b=1.0
ob_a=0.0
ib_size=0.010000
ib_r=0.25
ib_g=0.25
ib_b=0.25
ib_a=0.0
nMotionVectorsX=12.0
nMotionVectorsY=9.0
mv_dx=0.0
mv_dy=0.0
mv_l=0.9
mv_r=1.0
mv_g=1.0
mv_b=1.0
mv_a=0.0
b1n=0.0
b2n=0.0
b3n=0.0
b1x=1.0
b2x=1.0
b3x=1.0
b1ed=0.25
wavecode_0_enabled=1
wavecode_0_samples=512
wavecode_0_sep=0
wavecode_0_bSpectrum=1
wavecode_0_bUseDots=1
wavecode_0_bDrawThick=0
wavecode_0_bAdditive=1
wavecode_0_scaling=1.0
wavecode_0_smoothing=0.5
wavecode_0_r=1.0
wavecode_0_g=1.0
wavecode_0_b=1.0
wavecode_0_a=0.5
wave_0_per_point1=u = abs(cos(q1*0.1))*3.14159;
wave_0_per_point2=v = abs(cos(q1*0.015))*3.14159*2;
wave_0_per_point3=s = sample*3.14*100;
wave_0_per_point4=ss = sample*6.28*1000;
wave_0_per_point5=
wave_0_per_point6=//draw
wave_0_per_point7=xs = 0.5*sin(s)*cos(ss);
wave_0_per_point8=ys = 0.5*sin(s)*sin(ss);
wave_0_per_point9=zs = 0.5*cos(s);
wave_0_per_point10=
wave_0_per_point11=
wave_0_per_point12=//rotate x axis
wave_0_per_point13=angle = sin(q1*0.015)*6.28;
wave_0_per_point14=yx = ys*cos(angle) - zs*sin(angle);
wave_0_per_point15=zx = ys*sin(angle) + zs*cos(angle);
wave_0_per_point16=xx = xs;
wave_0_per_point17=
wave_0_per_point18=//rotate y axis
wave_0_per_point19=angle2 = sin(q1*0.02)*6.28;
wave_0_per_point20=xd = xx*cos(angle2) - zx*sin(angle2);
wave_0_per_point21=zd = xx*sin(angle2) + zx*cos(angle2);
wave_0_per_point22=yd = yx;
wave_0_per_point23=
wave_0_per_point24=//rotaye z axis
wave_0_per_point25=angle3 = sin(q1*0.012)*6.28;
wave_0_per_point26=xn = xd*cos(angle3) - yd*sin(angle3);
wave_0_per_point27=yn = xd*sin(angle3) + yd*cos(angle3);
wave_0_per_point28=
wave_0_per_point29=//scale
wave_0_per_point30=k = 5;
wave_0_per_point31=
wave_0_per_point32=norm = 1/sqrt(xn*xn + yn*yn + ((zd+2)*(zd+2)));
wave_0_per_point33=xnorm = norm*xn;
wave_0_per_point34=ynorm = norm*yn;
wave_0_per_point35=znrom = norm*zd;
wave_0_per_point36=
wave_0_per_point37=xs = xnorm*(1 + (k-1)*q5*q5)  + ynorm*((k-1)*q5*q6) + znorm*((k-1)*q5*q7);
wave_0_per_point38=ys = xnorm*((k-1)*q5*q6) + ynorm*(1+(k-1)*q6*q6) + znorm*((k-1)*q6*q7);
wave_0_per_point39=zd = xnorm*((k-1)*q5*q7) + ynorm*((k-1)*q6*q7) + znorm*(1+(k-1)*q7*q7);
wave_0_per_point40=
wave_0_per_point41=zd = zd + 2;
wave_0_per_point42=
wave_0_per_point43=x = xs*zd*0.1 + 0.5;
wave_0_per_point44=y = ys*zd*0.1*1.2 + 0.5;
wave_0_per_point45=
wave_0_per_point46=
wave_0_per_point47=r = 0.5 + 0.5*sin(q1*1.2 + x + x);
wave_0_per_point48=g = 0.5 + 0.5*sin(q1*1.5 + x + y);
wave_0_per_point49=b = 0.5 + 0.5*sin(q1*1.36 + y + y);
wavecode_1_enabled=1
wavecode_1_samples=512
wavecode_1_sep=0
wavecode_1_bSpectrum=1
wavecode_1_bUseDots=1
wavecode_1_bDrawThick=0
wavecode_1_bAdditive=1
wavecode_1_scaling=1.0
wavecode_1_smoothing=0.5
wavecode_1_r=1.0
wavecode_1_g=1.0
wavecode_1_b=1.0
wavecode_1_a=0.5
wave_1_per_point1=u = abs(cos(q1*0.1))*3.14159;
wave_1_per_point2=v = abs(cos(q1*0.015))*3.14159*2;
wave_1_per_point3=s = sample*3.14*100;
wave_1_per_point4=ss = sample*6.28*1000;
wave_1_per_point5=
wave_1_per_point6=//draw
wave_1_per_point7=xs = 0.5*sin(s)*cos(ss);
wave_1_per_point8=ys = 0.5*sin(s)*sin(ss);
wave_1_per_point9=zs = 0.5*cos(s);
wave_1_per_point10=
wave_1_per_point11=
wave_1_per_point12=//rotate x axis
wave_1_per_point13=angle = sin(q1*0.015)*6.28;
wave_1_per_point14=yx = ys*cos(angle) - zs*sin(angle);
wave_1_per_point15=zx = ys*sin(angle) + zs*cos(angle);
wave_1_per_point16=xx = xs;
wave_1_per_point17=
wave_1_per_point18=//rotate y axis
wave_1_per_point19=angle2 = sin(q1*0.05)*6.28;
wave_1_per_point20=xd = xx*cos(angle2) - zx*sin(angle2);
wave_1_per_point21=zd = xx*sin(angle2) + zx*cos(angle2);
wave_1_per_point22=yd = yx;
wave_1_per_point23=
wave_1_per_point24=//rotaye z axis
wave_1_per_point25=angle3 = sin(q1*0.022)*6.28;
wave_1_per_point26=xn = xd*cos(angle3) - yd*sin(angle3);
wave_1_per_point27=yn = xd*sin(angle3) + yd*cos(angle3);
wave_1_per_point28=
wave_1_per_point29=//scale
wave_1_per_point30=k = 1;
wave_1_per_point31=
wave_1_per_point32=norm = 1/sqrt(xn*xn + yn*yn + ((zd+2)*(zd+2)));
wave_1_per_point33=xnorm = norm*xn;
wave_1_per_point34=ynorm = norm*yn;
wave_1_per_point35=znrom = norm*zd;
wave_1_per_point36=
wave_1_per_point37=xs = xnorm*(1 + (k-1)*q5*q5)  + ynorm*((k-1)*q5*q6) + znorm*((k-1)*q5*q7);
wave_1_per_point38=ys = xnorm*((k-1)*q5*q6) + ynorm*(1+(k-1)*q6*q6) + znorm*((k-1)*q6*q7);
wave_1_per_point39=zd = xnorm*((k-1)*q5*q7) + ynorm*((k-1)*q6*q7) + znorm*(1+(k-1)*q7*q7);
wave_1_per_point40=
wave_1_per_point41=zd = zd + 2;
wave_1_per_point42=
wave_1_per_point43=x = xs*zd*0.10 + 0.5;
wave_1_per_point44=y = ys*zd*0.10*1.2 + 0.5;
wave_1_per_point45=
wave_1_per_point46=
wave_1_per_point47=r = 0.5 + 0.5*sin(q1*1.2 + x + x);
wave_1_per_point48=g = 0.5 + 0.5*sin(q1*1.25 + x + y);
wave_1_per_point49=b = 0.5 + 0.5*sin(q1*1.36 + y + y);
wavecode_2_enabled=1
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=1
wavecode_2_bUseDots=1
wavecode_2_bDrawThick=1
wavecode_2_bAdditive=1
wavecode_2_scaling=1.0
wavecode_2_smoothing=0.5
wavecode_2_r=1.0
wavecode_2_g=1.0
wavecode_2_b=1.0
wavecode_2_a=0.5
wave_2_per_point1=u = abs(cos(q1*0.1))*3.14159;
wave_2_per_point2=v = abs(cos(q1*0.015))*3.14159*2;
wave_2_per_point3=s = sample*3.14*100;
wave_2_per_point4=ss = sample*6.28*1000;
wave_2_per_point5=
wave_2_per_point6=//draw
wave_2_per_point7=xs = 0.5*sin(s)*cos(ss);
wave_2_per_point8=ys = 0.5*sin(s)*sin(ss);
wave_2_per_point9=zs = 0.5*cos(s);
wave_2_per_point10=
wave_2_per_point11=
wave_2_per_point12=//rotate x axis
wave_2_per_point13=angle = sin(q1*0.015)*6.28;
wave_2_per_point14=yx = ys*cos(angle) - zs*sin(angle);
wave_2_per_point15=zx = ys*sin(angle) + zs*cos(angle);
wave_2_per_point16=xx = xs;
wave_2_per_point17=
wave_2_per_point18=//rotate y axis
wave_2_per_point19=angle2 = sin(q1*0.02)*6.28;
wave_2_per_point20=xd = xx*cos(angle2) - zx*sin(angle2);
wave_2_per_point21=zd = xx*sin(angle2) + zx*cos(angle2);
wave_2_per_point22=yd = yx;
wave_2_per_point23=
wave_2_per_point24=//rotaye z axis
wave_2_per_point25=angle3 = sin(q1*0.012)*6.28;
wave_2_per_point26=xn = xd*cos(angle3) - yd*sin(angle3);
wave_2_per_point27=yn = xd*sin(angle3) + yd*cos(angle3);
wave_2_per_point28=
wave_2_per_point29=//scale
wave_2_per_point30=k = 5;
wave_2_per_point31=
wave_2_per_point32=norm = 1/sqrt(xn*xn + yn*yn + ((zd+2)*(zd+2)));
wave_2_per_point33=xnorm = norm*xn;
wave_2_per_point34=ynorm = norm*yn;
wave_2_per_point35=znrom = norm*zd;
wave_2_per_point36=
wave_2_per_point37=xs = xnorm*(1 + (k-1)*q5*q5)  + ynorm*((k-1)*q5*q6) + znorm*((k-1)*q5*q7);
wave_2_per_point38=ys = xnorm*((k-1)*q5*q6) + ynorm*(1+(k-1)*q6*q6) + znorm*((k-1)*q6*q7);
wave_2_per_point39=zd = xnorm*((k-1)*q5*q7) + ynorm*((k-1)*q6*q7) + znorm*(1+(k-1)*q7*q7);
wave_2_per_point40=
wave_2_per_point41=zd = zd + 2;
wave_2_per_point42=
wave_2_per_point43=
wave_2_per_point44=
wave_2_per_point45=x = -xs*zd*0.1 +  0.5;
wave_2_per_point46=y = ys*zd*0.1*1.2 + 0.5;
wave_2_per_point47=
wave_2_per_point48=
wave_2_per_point49=r = 0.5 + 0.5*sin(q1*1.2 + x + x);
wave_2_per_point50=g = 0.5 + 0.5*sin(q1*1.5 + x + y);
wave_2_per_point51=b = 0.5 + 0.5*sin(q1*1.36 + y + y);
wavecode_3_enabled=0
wavecode_3_samples=512
wavecode_3_sep=0
wavecode_3_bSpectrum=0
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=0
wavecode_3_bAdditive=0
wavecode_3_scaling=1.0
wavecode_3_smoothing=0.5
wavecode_3_r=1.0
wavecode_3_g=1.0
wavecode_3_b=1.0
wavecode_3_a=0.5
wave_3_per_point1=u = abs(cos(q1*0.1))*3.14159;
wave_3_per_point2=v = abs(cos(q1*0.015))*3.14159*2;
wave_3_per_point3=s = sample*20;
wave_3_per_point4=
wave_3_per_point5=//draw
wave_3_per_point6=xs = 0.5*sin(s)*cos(s*v);
wave_3_per_point7=ys = 0.5*sin(s)*sin(s*v);
wave_3_per_point8=zs = 0.5*sin(u);
wave_3_per_point9=
wave_3_per_point10=
wave_3_per_point11=//plot x,y,z to point on circle
wave_3_per_point12=//smp=sample*6.283;
wave_3_per_point13=//xp=sin(smp )*0.30;
wave_3_per_point14=//yp=cos(smp )*0.30;
wave_3_per_point15=//zp=0;
wave_3_per_point16=
wave_3_per_point17=
wave_3_per_point18=//alter shape;
wave_3_per_point19=///angy=sin(sample*6.28*4 +t1 )*6.28;
wave_3_per_point20=//xq=xp*cos(angy) - zp*sin(angy);
wave_3_per_point21=//zq=xp*sin(angy) + zp*cos(angy);
wave_3_per_point22=//xp=xq;
wave_3_per_point23=//zp=zq;
wave_3_per_point24=
wave_3_per_point25=
wave_3_per_point26=
wave_3_per_point27=//rotate on y axis;
wave_3_per_point28=//angy=t1*0.1;
wave_3_per_point29=//xq=xp*cos(angy) - zp*sin(angy);
wave_3_per_point30=//zq=xp*sin(angy) + zp*cos(angy);
wave_3_per_point31=//xp=xq;
wave_3_per_point32=//zp=zq;
wave_3_per_point33=
wave_3_per_point34=//rotate on x axis
wave_3_per_point35=//axs1 = sin(t1*0.15) + 1.6;
wave_3_per_point36=//yq= yp*cos(axs1) - zp*sin(axs1);
wave_3_per_point37=//zq= yp*sin(axs1) + zp*cos(axs1);
wave_3_per_point38=//yp=yq;
wave_3_per_point39=//zp=zq;
wave_3_per_point40=
wave_3_per_point41=//rotate on y axis again
wave_3_per_point42=//axs2 = sin(t1*0.1)*3.3;
wave_3_per_point43=//xq=xp*cos(axs2) - zp*sin(axs2);
wave_3_per_point44=//zq=xp*sin(axs2) + zp*cos(axs2);
wave_3_per_point45=//xp=xq;
wave_3_per_point46=//zp=zq;
wave_3_per_point47=
wave_3_per_point48=
wave_3_per_point49=
wave_3_per_point50=
wave_3_per_point51=//rotate x axis
wave_3_per_point52=angle = sin(q1*0.15 - 1.57);
wave_3_per_point53=yx = ys*cos(angle) - zs*sin(angle);
wave_3_per_point54=zx = ys*sin(angle) + zs*cos(angle);
wave_3_per_point55=xx = xs;
wave_3_per_point56=
wave_3_per_point57=//rotate y axis
wave_3_per_point58=//angle2 = sin(q1*0.2 - 1.57);
wave_3_per_point59=xd = xx*cos(angle2) - zx*sin(angle2);
wave_3_per_point60=zd = xx*sin(angle2) + zx*cos(angle2);
wave_3_per_point61=yd = yx;
wave_3_per_point62=
wave_3_per_point63=
wave_3_per_point64=x = xd*zd + 0.5;
wave_3_per_point65=y = yd*zd + 0.5;
wave_3_per_point66=
wave_3_per_point67=
wave_3_per_point68=r = 0.5 + 0.5*sin(q1*1.2 + x + x);
wave_3_per_point69=g = 0.5 + 0.5*sin(q1*1.5 + x + y);
wave_3_per_point70=b = 0.5 + 0.5*sin(q1*1.36 + y + y);
shapecode_0_enabled=1
shapecode_0_sides=4
shapecode_0_additive=0
shapecode_0_thickOutline=0
shapecode_0_textured=1
shapecode_0_x=0.5
shapecode_0_y=0.5
shapecode_0_rad=2.185871
shapecode_0_ang=0.0
shapecode_0_tex_ang=0.0
shapecode_0_tex_zoom=1.0
shapecode_0_r=1.0
shapecode_0_g=1.0
shapecode_0_b=1.0
shapecode_0_a=0.4
shapecode_0_r2=1.0
shapecode_0_g2=1.0
shapecode_0_b2=1.0
shapecode_0_a2=0.0
shapecode_0_border_r=1.0
shapecode_0_border_g=1.0
shapecode_0_border_b=1.0
shapecode_0_border_a=0.1
shape_0_per_frame1=tex_capture = above(q3,1);
shapecode_1_enabled=1
shapecode_1_sides=4
shapecode_1_additive=0
shapecode_1_thickOutline=0
shapecode_1_textured=1
shapecode_1_x=0.5
shapecode_1_y=0.5
shapecode_1_rad=2.185871
shapecode_1_ang=0.0
shapecode_1_tex_ang=0.0
shapecode_1_tex_zoom=1.0
shapecode_1_r=1.0
shapecode_1_g=1.0
shapecode_1_b=1.0
shapecode_1_a=0.4
shapecode_1_r2=1.0
shapecode_1_g2=1.0
shapecode_1_b2=1.0
shapecode_1_a2=0.0
shapecode_1_border_r=1.0
shapecode_1_border_g=1.0
shapecode_1_border_b=1.0
shapecode_1_border_a=0.1
shapecode_2_enabled=0
shapecode_2_sides=4
shapecode_2_additive=0
shapecode_2_thickOutline=0
shapecode_2_textured=0
shapecode_2_x=0.5
shapecode_2_y=0.5
shapecode_2_rad=0.1
shapecode_2_ang=0.0
shapecode_2_tex_ang=0.0
shapecode_2_tex_zoom=1.0
shapecode_2_r=1.0
shapecode_2_g=0.0
shapecode_2_b=0.0
shapecode_2_a=1.0
shapecode_2_r2=0.0
shapecode_2_g2=1.0
shapecode_2_b2=0.0
shapecode_2_a2=0.0
shapecode_2_border_r=1.0
shapecode_2_border_g=1.0
shapecode_2_border_b=1.0
shapecode_2_border_a=0.1
shapecode_3_enabled=0
shapecode_3_sides=4
shapecode_3_additive=0
shapecode_3_thickOutline=0
shapecode_3_textured=0
shapecode_3_x=0.5
shapecode_3_y=0.5
shapecode_3_rad=0.1
shapecode_3_ang=0.0
shapecode_3_tex_ang=0.0
shapecode_3_tex_zoom=1.0
shapecode_3_r=1.0
shapecode_3_g=0.0
shapecode_3_b=0.0
shapecode_3_a=1.0
shapecode_3_r2=0.0
shapecode_3_g2=1.0
shapecode_3_b2=0.0
shapecode_3_a2=0.0
shapecode_3_border_r=1.0
shapecode_3_border_g=1.0
shapecode_3_border_b=1.0
shapecode_3_border_a=0.1
per_frame_1=basstime = basstime + bass*0.03;
per_frame_2=basstime2 = basstime + bass*0.03;
per_frame_3=q1 = basstime2;
per_frame_4=
per_frame_5=//start in most active range
per_frame_6=basstime = if(below(basstime,1000),1000,basstime);
per_frame_7=//basstime = if(above(basstime,495),450,basstime);
per_frame_8=
per_frame_9=basstime = basstime + bass_att*0.03;
per_frame_10=vol = pow(bass+mid+treb,2);
per_frame_11=basssum = vol;
per_frame_12=
per_frame_13=stickybit = time%2;
per_frame_14=
per_frame_15=//avg vol
per_frame_16=//buffer 1
per_frame_17=volAvg = volAvg + vol*equal(stickybit,1);
per_frame_18=//number of samples 1 or framerate
per_frame_19=sample1 = sample1 + equal(stickybit,1);
per_frame_20=//buffer 2
per_frame_21=volAvg2 = volAvg2 + vol*equal(stickybit,0);
per_frame_22=//number of samples 2
per_frame_23=sample2 = sample2 + equal(stickybit,0);
per_frame_24=
per_frame_25=//transision
per_frame_26=edge = bnot(equal(bit2,stickybit));
per_frame_27=
per_frame_28=volAvg = volAvg - volAvg*edge*stickybit;
per_frame_29=volAvg2 = volAvg2 - volAvg2*edge*equal(stickybit,0);
per_frame_30=
per_frame_31=sample1 = sample1  - sample1*edge*stickybit;
per_frame_32=sample2 = sample2  - sample2*edge*equal(stickybit,0);
per_frame_33=
per_frame_34=//test vol against avg buffer lvl
per_frame_35=diff = if(equal(stickybit,1), (basssum/(volAvg2/sample2)) , 0);
per_frame_36=diff = if(equal(stickybit,0), (basssum/(volAvg/sample1)), diff);
per_frame_37=
per_frame_38=q3 = diff;
per_frame_39=
per_frame_40=bit2 = time%2;
per_frame_41=
per_frame_42=difftime = difftime + diff*0.03;
per_frame_43=q2 = difftime;
per_frame_44=
per_frame_45=//fix a strange error
per_frame_46=difftime = if(above(difftime,2000),0, difftime);
per_frame_47=
per_frame_48=monitor = abs(cos(time))*3.14;
per_frame_49=
per_frame_50=rarr = rand(100)*0.01;
per_frame_51=
per_frame_52=decay_r = 0.5 + 0.2*(abs(sin(diff+rarr)));
per_frame_53=decay_g = 0.5 + 0.25*(abs(cos(diff+rarr)));
per_frame_54=decay_b = 0.5 + 0.30*(abs(atan(diff+rarr)));
per_frame_55=
per_frame_56=
per_frame_57=//compute unit vec to scale on
per_frame_58=xxx = sin(difftime*0.89);
per_frame_59=yyy = sin(difftime*0.99);
per_frame_60=zzz = sin(difftime*0.74);
per_frame_61=
per_frame_62=//normalise
per_frame_63=norm = 1/sqrt(xxx*xxx + yyy*yyy + zzz*zzz);
per_frame_64=xxx = xxx*norm;
per_frame_65=yyy = yyy*norm;
per_frame_66=zzz = zzz*norm;
per_frame_67=
per_frame_68=monitor = ZZZ;
per_frame_69=
per_frame_70=q5 = xxx;
per_frame_71=q6 = yyy;
per_frame_72=q7 = zzz;
per_pixel_1=zoom = 1 + 0.05*q3;
warp_1=`shader_body
warp_2=`{
warp_3=`    // sample previous frame
warp_4=`    ret = tex2D( sampler_fc_main, uv ).xyz;
warp_5=`    
warp_6=`    // darken (decay) over time
warp_7=`    ret *= 0.8; //or try: ret -= 0.004;
warp_8=`}
comp_1=`shader_body
comp_2=`{
comp_3=`    float2 uv_echo = (uv - 0.5)*1.000*float2(1,-1) + 0.5;
comp_4=`    float3 value = lerp( tex2D(sampler_main, (uv)).xyz, 
comp_5=`                tex2D(sampler_main, (uv_echo)).xyz, 
comp_6=`                0.50 
comp_7=`              ); //video echo
comp_8=`    float3 value2 = lerp( tex2D(sampler_main, GetBlur1(uv)).xyz, 
comp_9=`                tex2D(sampler_main, GetBlur1(uv_echo)).xyz, 
comp_10=`                0.50 
comp_11=`              )*0.5; //video echo
comp_12=`   ret = (value + value2);   
comp_13=`
comp_14=`   ret = ret*2.00*ret; //gamma
comp_15=`}
