MILKDROP_PRESET_VERSION=201 PSVERSION=2 PSVERSION_WARP=2 PSVERSION_COMP=2 [preset00] fRating=4.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.583 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.00250 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=1.000 wave_b=0.350 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_frame1=a = q7; 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= 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_frame1=a = q7; 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= 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_frame1=a = q7; 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= 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_frame1=a = q7; 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= 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 per_frame_init_1=q16 = pow(rand(100)*0.01, 1.5)*0.029; per_frame_1=// custom beat detection code: (fps-independent; quiet songs don't freak out) per_frame_2=min_att = 2.5; // lower # = quieter songs can declare beats per_frame_3=decay_to = 0.8; // lower # = more hasty to declare a beat per_frame_4=decay_rate = pow(0.9990, fps); // lower # = more hasty to declare a beat per_frame_5=beat = bass/max(min_att,bass_att); per_frame_6=beat = max(beat, mid /max(min_att,mid_att )); per_frame_7=beat = max(beat, treb/max(min_att,treb_att)); per_frame_8=beat = max( beat, (prev_beat-decay_to)*decay_rate + decay_to ); per_frame_9=beat_level = (beat - prev_beat - 0.03)*24; per_frame_10=is_beat = above(beat_level, 0.5); per_frame_11=prev_beat = beat; per_frame_12= // put your beat responses HERE: per_frame_13= //wave_a = beat_level; per_frame_14= //q17 = max(0, min(1, beat_level)); per_frame_15= q7 = (max(max(bass/bass_att,treb/treb_att),mid/mid_att) - 0.82) * 3; per_frame_16= q7 = max(0,min(1,q7)); per_frame_17= per_frame_18=// the möbius transformation per_frame_19=// z -> (az+b)/(cz-d); where a,b,c,d are complex numbers and z will be the uv-vector per_frame_20=// (az+b)/(cz-d) = a/c + mu/(cz+d), with mu = (bc-ad)/c per_frame_21=// so a/c and mu can be calculated outside of the shader per_frame_22= per_frame_23=//before inversion per_frame_24= per_frame_25=scale = 1; per_frame_26=angle = time*.2; per_frame_27=translation_x = 0; per_frame_28=translation_y = 0.12; per_frame_29= per_frame_30=a_r = cos(angle)*scale; per_frame_31=a_i = sin(angle)*scale; per_frame_32=b_r = translation_x; per_frame_33=b_i = translation_y; per_frame_34= per_frame_35=//complex inverted per_frame_36=scale = 1; per_frame_37=angle = sin(time*0.1337)*0.3; per_frame_38=translation_u = 0; per_frame_39=translation_v = -0.2; per_frame_40= per_frame_41=// c per_frame_42=q15 = cos(angle)*scale; per_frame_43=q16 = sin(angle)*scale; per_frame_44= per_frame_45=// d per_frame_46=q17 = translation_u; per_frame_47=q18 = translation_v; per_frame_48= per_frame_49=// c^(-1) per_frame_50=c_inv_r = q15/(q15*q15+q16*q16); per_frame_51=c_inv_i = q16/(q15*q15+q16*q16); per_frame_52= per_frame_53=// a*c^(-1) per_frame_54=q11 = (a_r*c_inv_r - a_i*c_inv_i); per_frame_55=q12 = (a_r*c_inv_i - a_i*c_inv_r); per_frame_56= per_frame_57=// (bc-ad) per_frame_58=bcad_r = (b_r*q15 - b_i*q16)-(a_r*q17-a_i*q18); per_frame_59=bcad_i = (b_r*q16 - b_i*q15)-(a_r*q18-a_i*q17); per_frame_60= per_frame_61=// mu*c^(-1) per_frame_62=q13 = bcad_r*c_inv_r - bcad_i*c_inv_i; per_frame_63=q14 = bcad_r*c_inv_i - bcad_i*c_inv_r; warp_1=`#define MyGet GetPixel 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 = 4; //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=`sampler sampler_sunrise; comp_2=`shader_body comp_3=`{ comp_4=` comp_5=`float2 ac = float2(q11,q12); comp_6=`float2 mu = float2(q13,q14); comp_7=`float2 c = float2(q15,q16); comp_8=`float2 d = float2(q17,q18); comp_9=` comp_10=`float2 z = (uv-0.5); comp_11=` comp_12=`// (c*z + d) comp_13=`float2 czd = float2(z.x*c.x-z.y*c.y,z.x*c.y-z.y*c.x)*aspect.yx + d; comp_14=`// mu/(cz+d) comp_15=`float2 moebius = float2( mu.x*czd.x + mu.y*czd.y , mu.y*czd.x-mu.x*czd.y )/(czd.x*czd.x+czd.y*czd.y) + ac; comp_16=` comp_17=`moebius = 0.5 + (1.0 - abs( frac( moebius * 0.5 ) * 2 - 1.0 )-0.5)*0.99; comp_18=` comp_19=`uv = moebius; comp_20=`//the fun starts here ;-) comp_21=` comp_22=` ret = tex2D(sampler_main, uv).xyz; comp_23=` ret = ret*1.5 - 0.1; comp_24=` comp_25=` ret += GetBlur1(uv)*float3(0.5,0.32,0.1)*0.8; comp_26=`ret = lerp(ret,GetBlur3(uv)*(1-rad*1.2)*1.5,rad); comp_27=`} comp_28=`