MILKDROP_PRESET_VERSION=201
PSVERSION=2
PSVERSION_WARP=2
PSVERSION_COMP=2
[preset00]
fRating=3.000
fGammaAdj=1.000
fDecay=0.955
fVideoEchoZoom=0.997
fVideoEchoAlpha=0.500
nVideoEchoOrientation=1
nWaveMode=7
bAdditiveWaves=1
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=1
bMaximizeWaveColor=0
bTexWrap=0
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=0.001
fWaveScale=1.286
fWaveSmoothing=0.630
fWaveParam=0.000
fModWaveAlphaStart=0.710
fModWaveAlphaEnd=1.300
fWarpAnimSpeed=1.000
fWarpScale=1.331
fZoomExponent=1.00000
fShader=1.000
zoom=1.00951
rot=0.00000
cx=0.500
cy=0.500
dx=0.00000
dy=0.00000
warp=0.01000
sx=1.00000
sy=1.00000
wave_r=0.650
wave_g=0.650
wave_b=0.650
wave_x=0.500
wave_y=0.500
ob_size=0.500
ob_r=0.010
ob_g=0.000
ob_b=0.000
ob_a=0.000
ib_size=0.260
ib_r=0.250
ib_g=0.250
ib_b=0.250
ib_a=0.000
nMotionVectorsX=64.000
nMotionVectorsY=48.000
mv_dx=0.000
mv_dy=0.000
mv_l=0.000
mv_r=1.000
mv_g=1.000
mv_b=1.000
mv_a=0.000
b1n=0.000
b2n=0.000
b3n=0.000
b1x=1.000
b2x=1.000
b3x=1.000
b1ed=0.250
wavecode_0_enabled=1
wavecode_0_samples=512
wavecode_0_sep=0
wavecode_0_bSpectrum=0
wavecode_0_bUseDots=0
wavecode_0_bDrawThick=1
wavecode_0_bAdditive=0
wavecode_0_scaling=1.00000
wavecode_0_smoothing=0.50000
wavecode_0_r=1.000
wavecode_0_g=1.000
wavecode_0_b=1.000
wavecode_0_a=1.000
wave_0_per_point1=ma=ma+(above(bass,1)*3.1415*.01*bass);
wave_0_per_point2=ma=ma-(above(treb,1)*3.1415*.01*treb);
wave_0_per_point3=
wave_0_per_point4=mx=mx+(.0002*cos(ma));
wave_0_per_point5=my=my+(.0002*sin(ma));
wave_0_per_point6=
wave_0_per_point7=mx=if(above(mx,.9),(.9-mx),mx);
wave_0_per_point8=my=if(above(my,.9),(.9-my),my);
wave_0_per_point9=mx=if(below(mx,.1),(.9+mx),mx);
wave_0_per_point10=my=if(below(my,.1),(.9+my),my);
wave_0_per_point11=
wave_0_per_point12=x=mx;
wave_0_per_point13=y=my;
wave_0_per_point14=
wave_0_per_point15=a=(above(bass+mid+treb,.8));
wavecode_1_enabled=1
wavecode_1_samples=512
wavecode_1_sep=0
wavecode_1_bSpectrum=0
wavecode_1_bUseDots=0
wavecode_1_bDrawThick=1
wavecode_1_bAdditive=0
wavecode_1_scaling=1.00000
wavecode_1_smoothing=0.50000
wavecode_1_r=1.000
wavecode_1_g=1.000
wavecode_1_b=1.000
wavecode_1_a=1.000
wave_1_per_point1=ma=ma+(above(bass,1)*3.1415*.05*bass);
wave_1_per_point2=ma=ma-(above(mid,1)*3.1415*.05*mid);
wave_1_per_point3=
wave_1_per_point4=mx=mx+(.0001*cos(ma));
wave_1_per_point5=my=my+(.0001*sin(ma));
wave_1_per_point6=
wave_1_per_point7=mx=if(above(mx,.9),(.9-mx),mx);
wave_1_per_point8=my=if(above(my,.9),(.9-my),my);
wave_1_per_point9=mx=if(below(mx,.1),(.9+mx),mx);
wave_1_per_point10=my=if(below(my,.1),(.9+my),my);
wave_1_per_point11=
wave_1_per_point12=x=mx;
wave_1_per_point13=y=my;
wave_1_per_point14=
wave_1_per_point15=a=(above(bass+mid+treb,.1));
wavecode_2_enabled=1
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=0
wavecode_2_bUseDots=0
wavecode_2_bDrawThick=1
wavecode_2_bAdditive=0
wavecode_2_scaling=1.00000
wavecode_2_smoothing=0.50000
wavecode_2_r=1.000
wavecode_2_g=1.000
wavecode_2_b=1.000
wavecode_2_a=1.000
wave_2_per_point1=ma=ma+(above(mid,1)*3.1415*.01*mid);
wave_2_per_point2=ma=ma-(above(treb,1)*3.1415*.01*treb);
wave_2_per_point3=
wave_2_per_point4=mx=mx+(.0004*cos(ma));
wave_2_per_point5=my=my+(.0004*sin(ma));
wave_2_per_point6=
wave_2_per_point7=mx=if(above(mx,.9),(.9-mx),mx);
wave_2_per_point8=my=if(above(my,.9),(.9-my),my);
wave_2_per_point9=mx=if(below(mx,.1),(.9+mx),mx);
wave_2_per_point10=my=if(below(my,.1),(.9+my),my);
wave_2_per_point11=
wave_2_per_point12=x=mx;
wave_2_per_point13=y=my;
wave_2_per_point14=
wave_2_per_point15=a=(above(bass+mid+treb,.3));
wavecode_3_enabled=1
wavecode_3_samples=512
wavecode_3_sep=0
wavecode_3_bSpectrum=0
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=1
wavecode_3_bAdditive=0
wavecode_3_scaling=1.00000
wavecode_3_smoothing=0.50000
wavecode_3_r=1.000
wavecode_3_g=1.000
wavecode_3_b=1.000
wavecode_3_a=1.000
wave_3_per_point1=ma=ma+(above(bass,.5)*3.1415*.02*bass);
wave_3_per_point2=ma=ma-(above(treb,.5)*3.1415*.02*treb);
wave_3_per_point3=
wave_3_per_point4=mx=mx+(.0008*cos(ma));
wave_3_per_point5=my=my+(.0008*sin(ma));
wave_3_per_point6=
wave_3_per_point7=mx=if(above(mx,.9),(.9-mx),mx);
wave_3_per_point8=my=if(above(my,.9),(.9-my),my);
wave_3_per_point9=mx=if(below(mx,.1),(.9+mx),mx);
wave_3_per_point10=my=if(below(my,.1),(.9+my),my);
wave_3_per_point11=
wave_3_per_point12=x=mx;
wave_3_per_point13=y=my;
wave_3_per_point14=
wave_3_per_point15=a=(above(bass+mid+treb,.2));
shapecode_0_enabled=0
shapecode_0_sides=4
shapecode_0_additive=0
shapecode_0_thickOutline=0
shapecode_0_textured=1
shapecode_0_num_inst=1
shapecode_0_x=0.500
shapecode_0_y=0.500
shapecode_0_rad=1.79142
shapecode_0_ang=0.00000
shapecode_0_tex_ang=0.62832
shapecode_0_tex_zoom=1.00000
shapecode_0_r=1.000
shapecode_0_g=1.000
shapecode_0_b=1.000
shapecode_0_a=0.000
shapecode_0_r2=0.000
shapecode_0_g2=0.000
shapecode_0_b2=0.000
shapecode_0_a2=1.000
shapecode_0_border_r=1.000
shapecode_0_border_g=1.000
shapecode_0_border_b=1.000
shapecode_0_border_a=0.000
shapecode_1_enabled=0
shapecode_1_sides=4
shapecode_1_additive=0
shapecode_1_thickOutline=0
shapecode_1_textured=0
shapecode_1_num_inst=1
shapecode_1_x=0.500
shapecode_1_y=0.500
shapecode_1_rad=0.10000
shapecode_1_ang=0.00000
shapecode_1_tex_ang=0.00000
shapecode_1_tex_zoom=1.00000
shapecode_1_r=1.000
shapecode_1_g=0.000
shapecode_1_b=0.000
shapecode_1_a=1.000
shapecode_1_r2=0.000
shapecode_1_g2=1.000
shapecode_1_b2=0.000
shapecode_1_a2=0.000
shapecode_1_border_r=1.000
shapecode_1_border_g=1.000
shapecode_1_border_b=1.000
shapecode_1_border_a=0.100
shapecode_2_enabled=0
shapecode_2_sides=4
shapecode_2_additive=0
shapecode_2_thickOutline=0
shapecode_2_textured=0
shapecode_2_num_inst=1
shapecode_2_x=0.500
shapecode_2_y=0.500
shapecode_2_rad=0.10000
shapecode_2_ang=0.00000
shapecode_2_tex_ang=0.00000
shapecode_2_tex_zoom=1.00000
shapecode_2_r=1.000
shapecode_2_g=0.000
shapecode_2_b=0.000
shapecode_2_a=1.000
shapecode_2_r2=0.000
shapecode_2_g2=1.000
shapecode_2_b2=0.000
shapecode_2_a2=0.000
shapecode_2_border_r=1.000
shapecode_2_border_g=1.000
shapecode_2_border_b=1.000
shapecode_2_border_a=0.100
shapecode_3_enabled=0
shapecode_3_sides=4
shapecode_3_additive=0
shapecode_3_thickOutline=0
shapecode_3_textured=0
shapecode_3_num_inst=1
shapecode_3_x=0.500
shapecode_3_y=0.500
shapecode_3_rad=0.10000
shapecode_3_ang=0.00000
shapecode_3_tex_ang=0.00000
shapecode_3_tex_zoom=1.00000
shapecode_3_r=1.000
shapecode_3_g=0.000
shapecode_3_b=0.000
shapecode_3_a=1.000
shapecode_3_r2=0.000
shapecode_3_g2=1.000
shapecode_3_b2=0.000
shapecode_3_a2=0.000
shapecode_3_border_r=1.000
shapecode_3_border_g=1.000
shapecode_3_border_b=1.000
shapecode_3_border_a=0.100
warp_1=`#define MyGet GetPixel //GetBlur1
warp_2=`shader_body
warp_3=`{
warp_4=`    // GROW EFFECT - bright pixels spread radially outward.
warp_5=`    // BE CAREFUL - this can really thrash the texture cache! (SLOW)
warp_6=`    float grad_rad = 3;  //TWEAK
warp_7=`    float str = 2.3;      //TWEAK
warp_8=`    float3 d = float3(texsize.zw, 0) * grad_rad;
warp_9=`    float4 lums = 0;
warp_10=`    lums.x = lum( MyGet(uv + texsize.zw*d.xz) );
warp_11=`    lums.y = lum( MyGet(uv - texsize.zw*d.xz) );
warp_12=`    lums.z = lum( MyGet(uv + texsize.zw*d.zy) );
warp_13=`    lums.w = lum( MyGet(uv - texsize.zw*d.zy) );
warp_14=`    float2 grad = float2(lums.x-lums.y, lums.z-lums.w)*str*1000/grad_rad;
warp_15=`    grad = (saturate(grad*0.5+0.5)*2-1)*1.4;
warp_16=`    // sample previous frame
warp_17=`    ret = tex2D( sampler_fc_main, uv + grad*texsize.zw ).xyz;
warp_18=`
warp_19=`    // darken (decay) over time
warp_20=`    ret *= 0.965; //or try: ret -= 0.004;
warp_21=`}
comp_1=`shader_body
comp_2=`{
comp_3=`    ret = tex2D(sampler_main, uv).xyz;
comp_4=`    ret = ret*1.5 - 0.1;
comp_5=`
comp_6=`    float4 g;
comp_7=`    float3 d = float3(texsize.zw * 4, 0);
comp_8=`    g.x = lum(GetBlur1(uv + d.xz));
comp_9=`    g.y = lum(GetBlur1(uv - d.xz));
comp_10=`    g.z = lum(GetBlur1(uv + d.zy));
comp_11=`    g.w = lum(GetBlur1(uv - d.zy));
comp_12=`    
comp_13=`    ret *= 0.7;
comp_14=`    ret.x += saturate(g.x-g.y)*5;
comp_15=`    ret.z += saturate(g.y-g.x)*5;
comp_16=`    //ret.xy += (g.xz-g.yw)*3;
comp_17=`
comp_18=`ret.x = GetBlur1(uv).x*2;
comp_19=`ret.z = GetBlur2(uv).z*3;
comp_20=`
comp_21=`}
comp_22=`
comp_23=`
