[preset00]
fRating=2
fGammaAdj=1
fDecay=0.998999
fVideoEchoZoom=1.006596
fVideoEchoAlpha=0
nVideoEchoOrientation=3
nWaveMode=0
bAdditiveWaves=1
bWaveDots=0
bWaveThick=0
bModWaveAlphaByVolume=0
bMaximizeWaveColor=1
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=0
bSolarize=0
bInvert=0
fWaveAlpha=4.099998
fWaveScale=1.886994
fWaveSmoothing=0.63
fWaveParam=-0.5
fModWaveAlphaStart=0.71
fModWaveAlphaEnd=1.3
fWarpAnimSpeed=1
fWarpScale=1.331
fZoomExponent=1
fShader=0
zoom=0.999514
rot=0
cx=0.5
cy=0.5
dx=0
dy=0
warp=0.01
sx=1
sy=1
wave_r=0.65
wave_g=0.65
wave_b=0.65
wave_x=0.5
wave_y=0.5
ob_size=0.055
ob_r=1
ob_g=1
ob_b=0
ob_a=0.2
ib_size=0.0035
ib_r=0
ib_g=0
ib_b=0
ib_a=0
nMotionVectorsX=38.399994
nMotionVectorsY=24.000004
mv_dx=0
mv_dy=0.000002
mv_l=5
mv_r=0
mv_g=0
mv_b=0.7
mv_a=0
per_frame_1=high_bass = above(bass_att,2);
per_frame_2=high_treb = above(treb, 2);
per_frame_3=
per_frame_4=wave_b = if(high_treb,0,1);
per_frame_5=
per_frame_6=//mv_rr = if(high_bass,.5 ,mv_rr*.9);
per_frame_7=//mv_r = mv_rr;
per_frame_8=//mv_b = if(high_treb*high_bass,0,1);
per_frame_9=//mv_g = if(high_treb*high_bass,0,.1*sin(time*.302)+.1);
per_frame_10=//mv_a = if(above(bass_att,1.5),.6,mv_a);
per_frame_11=//mv_x = bits *3;
per_frame_12=//mv_y = mv_x *.8;
per_frame_13=
per_frame_14=ob_r = sin(time*.3)/2+.5;
per_frame_15=ob_g= sin(time*.34)/2+.5;
per_frame_16=ob_b = sin(time*.3714)/2+.5;
per_frame_17=
per_frame_18=boomnow = if(high_bass,time,boomnow);
per_frame_19=brightness = min(sqr(time-boomnow-.866)+.25,1);
per_frame_20=av_bass=if(high_bass,av_bass*.8+.2*bass,av_bass);
per_frame_21=count=count+above(bass,av_bass*1.2);
per_frame_22=
per_frame_23=ob_r = ob_r*brightness;
per_frame_24=ob_g = ob_g*brightness;
per_frame_25=ob_b = ob_b*brightness;
per_frame_26=
per_frame_27=w_dx = (above((w_y*bits)%2,0)*.01-.005)*sin(time);
per_frame_28=w_dy = (above((w_x*bits)%2,0)*.01-.005)*cos(time);
per_frame_29=
per_frame_30=w_x = w_x+w_dx;
per_frame_31=w_y = w_y +w_dy;
per_frame_32=monitor = bits;
per_frame_33=q1 = bits;
per_frame_34=w_x = if(above(abs(w_x-.5),.5),rand(10)/10,w_x);
per_frame_35=w_y = if(above(abs(w_y-.5),.5),rand(10)/10,w_y);
per_frame_36=
per_frame_37=wave_x = w_x;
per_frame_38=wave_y = w_y;
per_frame_39=
per_frame_40=monitor = brightness;
per_frame_41=monitor = av_bass;
per_frame_42=monitor = count;
per_pixel_1=//---- Rotation Angle
per_pixel_2=v_ang=time*.2*(x+y)*(.005+.003*(sin(time*.1)+cos(time*.14)));
per_pixel_3=
per_pixel_4=v_ang = time+sin(x*(sin(time*.32)*3+4)+y*(sin(time*.42)*3+4));
per_pixel_5=
per_pixel_6=//---- Initialisation: X, Y, ANG, CX, CY, DX, DY, SX, SY
per_pixel_7=//---- to these: VX, VY, VANG, CVX, CVY, DVX, DVY, SVX, SVY
per_pixel_8=vx = (x-.5)*cos(v_ang) - (y-.5)*sin(v_ang)+.5;
per_pixel_9=vy = (x-.5)*sin(v_ang) +(y-.5)*cos(v_ang)+.5;
per_pixel_10=vang=atan((vy-.5)/(vx+.000001-.5))+below(vx,.5)*sign(vy-.5)*3.14159;
per_pixel_11=cvx = (cx-.5)*cos(v_ang) - (cy-.5)*sin(v_ang)+.5;
per_pixel_12=cvy = (cx-.5)*sin(v_ang) +(cy-.5)*cos(v_ang)+.5;
per_pixel_13=svx=sx; svy=sy; dvx=dx; dvy=dy;
per_pixel_14=cang=atan((vy-cvy)/(vx+.000001-cvx))
per_pixel_15=+below(vx,cvx)*sign(vy-cvy)*3.14159; //Bonus var: angle about (cvx,cvy)
per_pixel_16=
per_pixel_17=//---- Preset Code
per_pixel_18=
per_pixel_19=dx=above(vx,sin(time*.5)*.7+.5)*1.0002;
per_pixel_20=dy = above(vy,(cos(time*.5)*.6+.5));
per_pixel_21=
per_pixel_22=//---- Realisation of virtual variables
per_pixel_23=cx = (cvx-.5)*cos(-v_ang) - (cvy-.5)*sin(-v_ang)+.5;
per_pixel_24=cy = (cvx-.5)*sin(-v_ang) +(cvy-.5)*cos(-v_ang)+.5;
per_pixel_25=dvx = dvx + (vx-cvx)*(svx-1);
per_pixel_26=dvy = dvy - (vy-cvy)*(svy-1);
per_pixel_27=//dx = dvx*cos(v_ang) - dvy*sin(v_ang);
per_pixel_28=//dy = -dvx*sin(v_ang) - dvy*cos(v_ang);
per_pixel_29=//---- End Virtual Axis Code
per_frame_init_1=bits = rand(7)+7;
