MILKDROP_PRESET_VERSION=201
PSVERSION=3
PSVERSION_WARP=3
PSVERSION_COMP=3
[preset00]
fRating=5.000
fGammaAdj=1.980
fDecay=0.500
fVideoEchoZoom=0.952
fVideoEchoAlpha=0.500
nVideoEchoOrientation=3
nWaveMode=1
bAdditiveWaves=1
bWaveDots=0
bWaveThick=1
bModWaveAlphaByVolume=1
bMaximizeWaveColor=1
bTexWrap=1
bDarkenCenter=0
bRedBlueStereo=0
bBrighten=0
bDarken=1
bSolarize=0
bInvert=0
fWaveAlpha=0.001
fWaveScale=0.133
fWaveSmoothing=0.000
fWaveParam=-1.000
fModWaveAlphaStart=1.000
fModWaveAlphaEnd=1.300
fWarpAnimSpeed=1.459
fWarpScale=2.007
fZoomExponent=1.00000
fShader=0.000
zoom=0.99990
rot=0.00000
cx=0.500
cy=0.500
dx=0.00000
dy=0.00000
warp=0.01000
sx=0.99990
sy=1.00000
wave_r=0.000
wave_g=0.000
wave_b=0.000
wave_x=0.500
wave_y=0.500
ob_size=0.000
ob_r=0.000
ob_g=0.000
ob_b=0.000
ob_a=0.100
ib_size=0.000
ib_r=0.250
ib_g=0.250
ib_b=0.250
ib_a=0.000
nMotionVectorsX=12.000
nMotionVectorsY=9.000
mv_dx=0.000
mv_dy=0.000
mv_l=0.900
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=0.800
b2x=1.000
b3x=1.000
b1ed=0.000
wavecode_0_enabled=1
wavecode_0_samples=256
wavecode_0_sep=0
wavecode_0_bSpectrum=0
wavecode_0_bUseDots=0
wavecode_0_bDrawThick=0
wavecode_0_bAdditive=0
wavecode_0_scaling=1.00000
wavecode_0_smoothing=0.50000
wavecode_0_r=1.000
wavecode_0_g=0.000
wavecode_0_b=0.000
wavecode_0_a=0.080
wave_0_per_frame1=t1 = 1; t2 = 8; t3 = .0; t4 = .0;
wave_0_per_point1=t1 = (t1*65+37)%4096;
wave_0_per_point2=t2 = (t2*65+37)%4096;
wave_0_per_point3=
wave_0_per_point4=t3 = t3*.99 + (t1-2047)/2048/200;
wave_0_per_point5=t4 = t4*.99 + (t2-2047)/2048/200 + .002*sin(13*sample);
wave_0_per_point6=
wave_0_per_point7=n = int(sample*256);
wave_0_per_point8=//a = bnot(n%3);
wave_0_per_point9=
wave_0_per_point10=x = sample ; 
wave_0_per_point11=y = t4+.5;
wavecode_1_enabled=0
wavecode_1_samples=60
wavecode_1_sep=0
wavecode_1_bSpectrum=0
wavecode_1_bUseDots=0
wavecode_1_bDrawThick=0
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=0.000
wavecode_1_a=0.070
wave_1_per_point1=ang0 = 3.14*sin(sample*171.549);
wave_1_per_point2=ang1 = 3.14*sin(sample*71.35);
wave_1_per_point3=rad0 = sin(sample*2115.23);
wave_1_per_point4=
wave_1_per_point5=size = .4;
wave_1_per_point6=x = .7 + size*rad0*rad0*cos(ang0);
wave_1_per_point7=y = .7 + size*rad0*rad0*sin(ang1);
wave_1_per_point8=
wave_1_per_point9=a = (1-rad0*rad0)*.1;
wave_1_per_point10=r = 1; g = 0;
wavecode_2_enabled=0
wavecode_2_samples=512
wavecode_2_sep=0
wavecode_2_bSpectrum=0
wavecode_2_bUseDots=0
wavecode_2_bDrawThick=0
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
wavecode_3_enabled=0
wavecode_3_samples=256
wavecode_3_sep=0
wavecode_3_bSpectrum=1
wavecode_3_bUseDots=0
wavecode_3_bDrawThick=0
wavecode_3_bAdditive=1
wavecode_3_scaling=1.00000
wavecode_3_smoothing=0.50000
wavecode_3_r=0.000
wavecode_3_g=0.200
wavecode_3_b=0.000
wavecode_3_a=0.200
wave_3_per_point1=
wave_3_per_point2=
wave_3_per_point3=x = sin(sample*34-1)/8+.5;
wave_3_per_point4=y = sin(sample*12.6)/8+.5;
wave_3_per_point5=a = 0.1 + .1*sin(sample*83.1);
shapecode_0_enabled=1
shapecode_0_sides=12
shapecode_0_additive=1
shapecode_0_thickOutline=1
shapecode_0_textured=0
shapecode_0_num_inst=600
shapecode_0_x=0.300
shapecode_0_y=0.800
shapecode_0_rad=0.10892
shapecode_0_ang=0.00000
shapecode_0_tex_ang=0.00000
shapecode_0_tex_zoom=4.86445
shapecode_0_r=0.000
shapecode_0_g=0.000
shapecode_0_b=1.000
shapecode_0_a=0.400
shapecode_0_r2=0.000
shapecode_0_g2=0.000
shapecode_0_b2=1.000
shapecode_0_a2=0.000
shapecode_0_border_r=0.000
shapecode_0_border_g=0.000
shapecode_0_border_b=0.200
shapecode_0_border_a=0.000
shape_0_init1=bob = 1.5;
shape_0_init2=ro = 0;
shape_0_init3=red = rand(20);
shape_0_per_frame1=n = instance*6;
shape_0_per_frame2=x = gmegabuf(n);
shape_0_per_frame3=y = gmegabuf(n+1);
shape_0_per_frame4=z = gmegabuf(n+2);
shape_0_per_frame5=rad = gmegabuf(n+3)+.00;
shape_0_per_frame6=sides = 5 + min(rad*200,7);
shape_0_per_frame7=ang = instance*.10;
shape_0_per_frame8=
shape_0_per_frame9=a = gmegabuf(n+4) * above(z,0);
shape_0_per_frame10=a2 = 0;
shape_0_per_frame11=border_a = .0;
shapecode_1_enabled=0
shapecode_1_sides=16
shapecode_1_additive=1
shapecode_1_thickOutline=0
shapecode_1_textured=0
shapecode_1_num_inst=23
shapecode_1_x=0.780
shapecode_1_y=0.160
shapecode_1_rad=0.02988
shapecode_1_ang=0.00000
shapecode_1_tex_ang=0.00000
shapecode_1_tex_zoom=1.00000
shapecode_1_r=0.000
shapecode_1_g=0.000
shapecode_1_b=0.000
shapecode_1_a=0.400
shapecode_1_r2=0.000
shapecode_1_g2=1.000
shapecode_1_b2=0.000
shapecode_1_a2=0.000
shapecode_1_border_r=0.000
shapecode_1_border_g=0.000
shapecode_1_border_b=1.000
shapecode_1_border_a=0.000
shape_1_per_frame1=x = .5 + .3*sin(37.2*instance);
shape_1_per_frame2=y = .5 + .3*cos(21.8*instance);
shape_1_per_frame3=
shape_1_per_frame4=a = .2;
shape_1_per_frame5=rad = (1+instance)*.01;
shapecode_2_enabled=0
shapecode_2_sides=23
shapecode_2_additive=1
shapecode_2_thickOutline=0
shapecode_2_textured=1
shapecode_2_num_inst=2
shapecode_2_x=0.300
shapecode_2_y=0.330
shapecode_2_rad=0.73160
shapecode_2_ang=0.00000
shapecode_2_tex_ang=0.00000
shapecode_2_tex_zoom=1.34782
shapecode_2_r=0.000
shapecode_2_g=0.000
shapecode_2_b=1.000
shapecode_2_a=1.000
shapecode_2_r2=0.000
shapecode_2_g2=0.000
shapecode_2_b2=1.000
shapecode_2_a2=0.500
shapecode_2_border_r=1.000
shapecode_2_border_g=1.000
shapecode_2_border_b=1.000
shapecode_2_border_a=0.000
shape_2_per_frame1=x = .4 + .2*instance;
shapecode_3_enabled=1
shapecode_3_sides=16
shapecode_3_additive=1
shapecode_3_thickOutline=0
shapecode_3_textured=1
shapecode_3_num_inst=1
shapecode_3_x=0.880
shapecode_3_y=0.160
shapecode_3_rad=0.08927
shapecode_3_ang=0.00000
shapecode_3_tex_ang=0.00000
shapecode_3_tex_zoom=1.53114
shapecode_3_r=0.600
shapecode_3_g=1.000
shapecode_3_b=0.000
shapecode_3_a=0.250
shapecode_3_r2=0.000
shapecode_3_g2=0.000
shapecode_3_b2=0.000
shapecode_3_a2=0.200
shapecode_3_border_r=1.000
shapecode_3_border_g=1.000
shapecode_3_border_b=1.000
shapecode_3_border_a=0.000
per_frame_init_1=q1 = 0; q2 = 0; q3 = 0; q4 = 0; q5 = 0; q6 = 0; q7 = 0; q8 = 0; q9 = 0; q10 = 0;
per_frame_init_2=q11 = 0; q12 = 0; q13 = 0; q14 = 0; q15 = 0; q16 = 0; q17 = 0; q18 = 0; q19 = 0; q20 = 0;
per_frame_init_3=q21 = 0; q22 = 0; q23 = 0; q24 = 0; q25 = 0; q26 = 0; q27 = 0; q28 = 0; q29 = 0; q10 = 3;
per_frame_init_4=q31 = 0; q32 = 0;
per_frame_init_5=
per_frame_init_6=XCam = rand(10)-5; YCam = 4.5; ZCam = -rand(8);
per_frame_init_7=xang = rand(1)-.6;
per_frame_init_8=
per_frame_init_9=power = 1; speed = 1; XVog = rand(8)-4; YVog = 2; ZVog = rand(6)-3;
per_frame_init_10=reg30 = rand(8);
per_frame_init_11=reg31 = rand(8);
per_frame_init_12=reg32 = rand(8);
per_frame_init_13=
per_frame_init_14=
per_frame_init_15=rvol = 1;
per_frame_init_16=n = 0;
per_frame_init_17=loop (10000,
per_frame_init_18=  gmegabuf(n) = 0;
per_frame_init_19=  megabuf(n) = 0;
per_frame_init_20=  n = n+1;
per_frame_init_21=);
per_frame_init_22=
per_frame_init_23=base = 10000;
per_frame_init_24=megabuf(base) = .54; megabuf(base+1) = 1.02; megabuf(base+2) = .42;
per_frame_init_25=megabuf(base+10) = .54; megabuf(base+11) = 1.02; megabuf(base+12) = .45;
per_frame_init_26=
per_frame_init_27=reg00 = 0; reg01 = 0;reg02 = 0; reg03 = 0; reg04 = 2 + rand(3); 
per_frame_init_28=reg05 = 0; reg06 = 0;reg07 = 0; reg08 = 0; reg09 = 0; 
per_frame_init_29=reg10 = 0; reg11 = 0;reg12 = 0; reg13 = 0; reg14 = 0; 
per_frame_init_30=reg15 = 0; reg16 = 0;reg17 = 0; reg18 = 0; reg19 = 0; 
per_frame_init_31=reg20 = 0; reg21 = 0;reg22 = 0; reg23 = 0; reg24 = 0; 
per_frame_init_32=reg25 = 0; reg26 = 0;reg27 = 0; reg28 = 0; reg29 = 0; 
per_frame_init_33=reg30 = 0; reg31 = 0;reg32 = 0; reg33 = 0; reg34 = 0; 
per_frame_init_34=reg35 = 0; reg36 = 0;reg37 = 0; reg38 = 0; reg39 = 0; 
per_frame_init_35=reg40 = 0; reg41 = 0;reg42 = 0; reg43 = 0; reg44 = 0; 
per_frame_init_36=
per_frame_init_37=reg50 = rand(6);
per_frame_init_38=reg51 = rand(6);
per_frame_init_39=
per_frame_init_40=scene = int(rand(20)+1)*10;
per_frame_init_41=base = 10000;
per_frame_init_42=megabuf(base+140) = .7; megabuf(base+141) = 1.0; megabuf(base+142) = .9;
per_frame_init_43=megabuf(base+130) = .6; megabuf(base+131) = 1.1; megabuf(base+132) = .86;
per_frame_init_44=megabuf(base+120) = .64; megabuf(base+121) = 1.02; megabuf(base+122) = .4;
per_frame_init_45=megabuf(base+110) = .66; megabuf(base+111) = 1.08; megabuf(base+112) = .62;
per_frame_init_46=megabuf(base+100) = .58; megabuf(base+101) = 1.07; megabuf(base+102) = .58;
per_frame_init_47=megabuf(base+90) = .61; megabuf(base+91) = 1.06; megabuf(base+92) = .89;
per_frame_init_48=megabuf(base+80) = .58; megabuf(base+81) = 1.06; megabuf(base+82) = .54;
per_frame_init_49=megabuf(base+70) = .58; megabuf(base+71) = 1.06; megabuf(base+72) = .48;
per_frame_init_50=megabuf(base+60) = .56; megabuf(base+61) = 1.02; megabuf(base+62) = .52;
per_frame_init_51=megabuf(base+50) = .54; megabuf(base+51) = 1.04; megabuf(base+52) = .49;
per_frame_init_52=megabuf(base+40) = .52; megabuf(base+41) = 1.04; megabuf(base+42) = .49;
per_frame_init_53=megabuf(base+30) = .505; megabuf(base+31) = 1.02; megabuf(base+32) = .48;
per_frame_init_54=megabuf(base+20) = .54; megabuf(base+21) = 1.02; megabuf(base+22) = .5;
per_frame_init_55=megabuf(base+10) = .54; megabuf(base+11) = 1.02; megabuf(base+12) = .45;
per_frame_init_56=megabuf(base+150) = .48; megabuf(base+151) = .79; megabuf(base+152) = .595;
per_frame_init_57=megabuf(base+160) = .51; megabuf(base+161) = .74; megabuf(base+162) = .6;
per_frame_init_58=megabuf(base+170) = .6; megabuf(base+171) = .55; megabuf(base+172) = .72;
per_frame_init_59=megabuf(base+180) = .51; megabuf(base+181) = .49; megabuf(base+182) = .87;
per_frame_init_60=megabuf(base+190) = .66; megabuf(base+191) = .06; megabuf(base+192) = .25;
per_frame_init_61=megabuf(base+200) = .61; megabuf(base+201) = .4;  megabuf(base+202) = .3;
per_frame_init_62=megabuf(base+210) = .82; megabuf(base+211) = .51; megabuf(base+212) = -.3;
per_frame_init_63=megabuf(base+220) = .48; megabuf(base+220) = .79; megabuf(base+220) = .595;
per_frame_init_64=megabuf(base+230) = .64; megabuf(base+231) = .24; megabuf(base+232) = .17;
per_frame_init_65=megabuf(base+240) = .49; megabuf(base+241) = .76; megabuf(base+242) = .6;
per_frame_init_66=zoom = 1.0;
per_frame_init_67=
per_frame_1=q31 = .8; //Tele
per_frame_2=q32 = .2; //Verschiebung Y-Mitte ; pos-> Vogel nach oben
per_frame_3=size = .3* (1 + above(xang,0)*xang/3);
per_frame_4=dec_m = pow (0.85, 30/fps); dec_s = pow (0.98, 30/fps); 
per_frame_5=beat = if(tic, mid_att*4, beat*dec_s);
per_frame_6=tic = above(mid_att, beat)*above(time,t0+1); t0 = if(tic,time,t0); count = count + tic;
per_frame_7=vol = (bass_att+mid_att+treb_att)/3;
per_frame_8=vol_ = vol_*dec_s + (1-dec_s) * vol;
per_frame_9=
per_frame_10=speed = dec_s*speed + (1-dec_s)*(vol_/4+.3)*size*4 ; //#
per_frame_11=
per_frame_12=//Kameraposition rel. zu Vogel
per_frame_13=reg00 = if(tic*bnot(count%4), rand(8)-4, reg00);
per_frame_14=reg01 = if(tic*bnot(count%6), (rand(8))/6+0, reg01);
per_frame_15=reg02 = if(tic*bnot(count%8), rand(10)-4, reg02);
per_frame_16=
per_frame_17=reg03 = reg03 + max(min((reg00-reg03),.1), -.1)/fps*20;
per_frame_18=reg04 = reg04 + max(min((reg01-reg04),.05), -.05)/fps*20;
per_frame_19=reg05 = reg05 + max(min((reg02-reg05),.1), -.1)/fps*20;
per_frame_20=dec_f = pow(.93,30/fps); //#
per_frame_21=
per_frame_22=//Kamera Richtung
per_frame_23=dxang = -asin((YVog-YCam)/dist);
per_frame_24=xang = xang*dec_f + (1-dec_f)*min(max(dxang,-1),2); //VorfAKTOR ?
per_frame_25=
per_frame_26=yang1 = atan(-(XVog-XCam)/(ZVog-ZCam)) ;
per_frame_27=yang1 = if (below(ZVog-ZCam,0),if(above(XVog-XCam,0),yang1+3.1416,yang1-3.1416),yang1);
per_frame_28=per = if(below(yang1,yanga-6),per+1,per);
per_frame_29=per = if(above(yang1,yanga+6),per-1,per);
per_frame_30=yanga = yang1;
per_frame_31=yang = yang*dec_f + (1-dec_f)*(yang1+per*6.2832);
per_frame_32=yang_ = yang_*dec_f + (1-dec_f)*yang;
per_frame_33=zang = -atan((yang-yang_)*4)/2;
per_frame_34=
per_frame_35=//Kamera Position
per_frame_36=rvol = rvol*dec_s + (1-dec_s) * min(max(vol_,0),1);
per_frame_37=rvol = min(max(rvol,0),1);
per_frame_38=dec_f = pow(.98, 30/fps); //#separate fr ang und pos !
per_frame_39=dec_f = rvol*dec_f + (1-rvol);
per_frame_40=//dec_f = 1;
per_frame_41=XCam = XCam*dec_f + (1-dec_f)* (XVog-reg03) ;
per_frame_42=ZCam = ZCam*dec_f + (1-dec_f)* (ZVog-reg05); //# bei grosser YVog reduzieren
per_frame_43=YMin = 4*above(xang,0)*pow(xang/1.6,1.5);
per_frame_44=YCam1 = YCam1*dec_f + (1-dec_f)*reg04;
per_frame_45=YCam = YCam1 + YMin + .5;
per_frame_46=dist = sqrt(pow(XCam-XVog,2)+pow(YCam-YVog,2)+pow(ZCam-ZVog,2));
per_frame_47=
per_frame_48=//VOGEL
per_frame_49=reg12 = if(tic*bnot(count%3), (rand(100)-50)/50, reg12*bnot(count%3));
per_frame_50=reg15 = dec_s * reg15 + (1-dec_s)*(reg12+ (rand(10)-5)*(rand(10)-5)/2/fps); //# rand ?
per_frame_51=
per_frame_52=//Vogel Flugrichtung
per_frame_53=xangV = 0;
per_frame_54=yangV = yangV + -zangV/fps/2; 
per_frame_55=zangV = reg15 ; //hier Richtung steuern
per_frame_56=twing = twing + (1+.2*cos(trel))/fps*6*sqrt(power);
per_frame_57=q4 = power/2*sin(twing+.5)+.2-.2*power ; //wing angle
per_frame_58=q5 = power*.8*cos(twing+.5)-.1+power/4; //wing bend
per_frame_59=q7 = -sin(twing+.5)*.015*power; //body uplift
per_frame_60=
per_frame_61=
per_frame_62=//Vogel Position
per_frame_63=reg41 = if(tic*bnot(count%5), max(rand(8)-2,.5), reg41*above(vol_,.7));
per_frame_64=reg44 = reg44 + max(min((reg41-reg44),.05), -.05)/fps*5;
per_frame_65=power = dec_m * power + (1-dec_m)*min(max((reg41-reg44)*2 + vol_-.2,.1),1.6);
per_frame_66=XVog = XVog + sin(yangV)/fps*speed*(1-q5/16);
per_frame_67=ZVog = ZVog + cos(yangV)/fps*speed*(1-q5/16);
per_frame_68=YVog = dec_s * YVog + (1-dec_s)*max(min(reg44,8),.2);
per_frame_69=
per_frame_70=
per_frame_71=//YVog = 1; XVog = 0; ZVog = 0;xang = .0; yang = 0; zang = 0; XCam = 0; YCam = 1; ZCam = -2;
per_frame_72=//yangV = time*0; xangV = 0; zangV = 0;
per_frame_73=//yang = time/4*0 + int(time)%4*6.28/4; xang = -.12; zang = 0;
per_frame_74=//xang = -.20; yang = 0;zang = 0;
per_frame_75=
per_frame_76=//Vogel Rumpf
per_frame_77=n = -0;
per_frame_78=loop (80,
per_frame_79=  k1 = n/6/80; k2 = 1-pow(2,-pow(k1*4,2));
per_frame_80=  megabuf(n) = 0-zangV*pow(1-k1,3)/6;
per_frame_81=  megabuf(n+1) = k2*q7-(1-cos(12.5*pow(k1,.55)))*.03*k1*sign(k1-.29);
per_frame_82=  megabuf(n+2) = .45-k1;
per_frame_83=  megabuf(n+3) = k1*(1.2-cos(12.5*pow(k1,.55))) + .2;
per_frame_84=  megabuf(n+3) = k1*(1.5-.4*k1-cos(12.5*pow(k1,.55))) + .2+.0/(k1+1);
per_frame_85=  megabuf(n+4)  = .4;
per_frame_86=  n = n+6;
per_frame_87=);
per_frame_88=
per_frame_89=//Vogel Fluegel
per_frame_90=sep = 26; n0 = n;
per_frame_91=loop (520,
per_frame_92=  k1 = (n-n0)/6;
per_frame_93=  fnum = (int(k1/sep))/520*sep;
per_frame_94=  flen = (k1%sep)/sep;
per_frame_95=  //draw flat wing in x;z plane
per_frame_96=  z0 = (flen - flen*fnum)*(.6+fnum)/2.4 + fnum*(1-2*fnum)/16 ;
per_frame_97=  x0 = (fnum/4 + flen*fnum*fnum/2.5)+ .00*int(k1%4); 
per_frame_98=  megabuf(n+1) = x0*sin(q4 + q5/2*(pow(2,-16*pow(x0-.02,2)))) +q7 -flen*.1*q5*x0 
per_frame_99=                 +.04*(1-fnum)*cos((flen-.5)*2) + .0;
per_frame_100=///  megabuf(n+1) = megabuf(n+1) * (1+((k1%2)-.5)*zangV*2); 
per_frame_101=  megabuf(n) = (x0*cos(q4)-x0*q5/16+.04)*((k1%2)-.5)*2;
per_frame_102=  megabuf(n+2) = -z0-.03;
per_frame_103=  megabuf(n+3) = .7-x0*.6;
per_frame_104=  megabuf(n+4) =  max(1+fnum/2-flen,0)/2 ;
per_frame_105=  n = n+6;
per_frame_106=);
per_frame_107=
per_frame_108=//Landschaft
per_frame_109=//Vektor x nach rechts
per_frame_110=ox = 1; oy = 0; oz = 0;
per_frame_111=mx = ox*cos(zang) - oy*sin(zang);
per_frame_112=my = ox*sin(zang) + oy*cos(zang);
per_frame_113=ox = mx;oy = my;
per_frame_114=mx = ox*cos(yang) + oz*sin(yang);
per_frame_115=mz = - ox*sin(yang) + oz*cos(yang);
per_frame_116=ox = mx;oz = mz;
per_frame_117=my = oy*cos(xang) - oz*sin(xang);
per_frame_118=mz = oy*sin(xang) + oz*cos(xang);
per_frame_119=oy = my;oz = mz;
per_frame_120=q14=ox; q15 = oy; q16 = oz;
per_frame_121=
per_frame_122=//Vektor y nach oben
per_frame_123=ox = 0; oy = 1; oz = 0;;
per_frame_124=mx = ox*cos(zang) - oy*sin(zang);
per_frame_125=my = ox*sin(zang) + oy*cos(zang);
per_frame_126=ox = mx;oy = my;
per_frame_127=mx = ox*cos(yang) + oz*sin(yang);
per_frame_128=mz = - ox*sin(yang) + oz*cos(yang);
per_frame_129=ox = mx;oz = mz;
per_frame_130=my = oy*cos(xang) - oz*sin(xang);
per_frame_131=mz = oy*sin(xang) + oz*cos(xang);
per_frame_132=oy = my; oz = mz;
per_frame_133=q17=ox; q18 = oy; q19 = oz;
per_frame_134=
per_frame_135=//Rotation Vogel, eigene Achse
per_frame_136=reg20 = cos(xangV); reg21 = sin(xangV);
per_frame_137=reg22 = cos(yangV); reg23 = sin(yangV);
per_frame_138=reg24 = cos(zangV); reg25 = sin(zangV);
per_frame_139=
per_frame_140=n = 0; 
per_frame_141=loop (620,
per_frame_142=  ox = megabuf(n)*size;
per_frame_143=  oy = megabuf(n+1)*size;
per_frame_144=  oz = megabuf(n+2)*size;
per_frame_145=  megabuf(n+3) = megabuf(n+3)*size;
per_frame_146=  mx = ox*reg24 - oy*reg25; my = ox*reg25 + oy*reg24;
per_frame_147=  ox = mx; oy = my;
per_frame_148=  mx = ox*reg22 + oz*reg23; mz = -ox*reg23 + oz*reg22;
per_frame_149=  ox = mx;  oz = mz;
per_frame_150=  my = oy*reg20 + oz*reg21; mz = -oy*reg21 + oz*reg20;
per_frame_151=  oy = my;  oz = mz;
per_frame_152=  megabuf(n)   = ox;
per_frame_153=  megabuf(n+1) = oy;
per_frame_154=  megabuf(n+2) = oz;
per_frame_155=  n = n+6;
per_frame_156=);
per_frame_157=reg20 = cos(xang); reg21 = sin(xang);
per_frame_158=reg22 = cos(yang); reg23 = sin(yang);
per_frame_159=reg24 = cos(zang); reg25 = sin(-zang);
per_frame_160=
per_frame_161=//Projektion Vogel, im Raum
per_frame_162=n = 0;
per_frame_163=loop (620,
per_frame_164=  ox = megabuf(n)+XVog-XCam;
per_frame_165=  oy = megabuf(n+1)+YVog-YCam;
per_frame_166=  oz = megabuf(n+2)+ZVog-ZCam;
per_frame_167=  r0 = megabuf(n+3);
per_frame_168=  mx = ox*reg24 -oy*reg25; my = ox*reg25 + oy*reg24;
per_frame_169=  ox = mx; oy = my;
per_frame_170=  mx = ox*reg22 + oz*reg23; mz = -ox*reg23 + oz*reg22;
per_frame_171=  ox = mx;  oz = mz;
per_frame_172=  my = oy*reg20 + oz*reg21; mz = -oy*reg21 + oz*reg20;
per_frame_173=  oy = my;  oz = mz;
per_frame_174=  gmegabuf(n)   = ox/oz + .5;
per_frame_175=  gmegabuf(n+1) = oy/oz*aspecty+ .5+q32;
per_frame_176=  gmegabuf(n+2) = oz;
per_frame_177=  gmegabuf(n+3) = megabuf(n+3)*.17/oz*aspecty;
per_frame_178=  gmegabuf(n+4) = megabuf(n+4);
per_frame_179=  n = n+6;
per_frame_180=);
per_frame_181=
per_frame_182=chg = tic*below(xang,-.7);
per_frame_183=scene = if(chg, (count%24)*10+10, scene);
per_frame_184=//scene = 150;
per_frame_185=//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
per_frame_186=
per_frame_187=q1 = dist;
per_frame_188=q8 = (cos(yang))/8;
per_frame_189=
per_frame_190=q10 = megabuf(base+scene)   + .015*sin(XCam/80);
per_frame_191=q11 = megabuf(base+scene+1) + .015*sin(YCam/80);
per_frame_192=q12 = megabuf(base+scene+2) + .02*sin(time/100);
per_frame_193=
per_frame_194=day = 120;
per_frame_195=q20 = .5 + .3*sin(time/day*1.46); //cloud
per_frame_196=q21 = .35 + .4*sin(time/day+reg50); //day
per_frame_197=q22 = cos(time/day+reg50);
per_frame_198=
per_frame_199=q23 = 0.4 + .45*(1-q21/2)*max(sin(time/day*2.734+reg51/2),0); //fog density, <1 !
per_frame_200=q24 = min(max(.5 + 1 * q22,.2),.8); //fogcol, 1 = cool
per_frame_201=
per_frame_202=q5 = 1+sin(time/day*1.78+reg51) ; 
per_frame_203=//q6 = (2.5+sin(time/day*.753))/10;
per_frame_204=
per_frame_205=q25 = XCam/8; 
per_frame_206=q26 = -ZCam/8; 
per_frame_207=q27 = YCam/4; 
per_frame_208=q28 = 0.35/YCam;
per_frame_209=q30 = (above(xang,0)*xang/6+.5);
per_frame_210=monitor = YCam;
per_frame_211=//xang = 0;
per_frame_212=
per_pixel_1=//zoom = 1 + cos(16*x)*.03;
warp_1=`float2 uv1;
warp_2=`
warp_3=` float2 cpow(float2 base, float ex) {
warp_4=`   float moduz = sqrt(base.x*base.x + base.y*base.y);
warp_5=`   float thetaz = atan2(base.y, base.x);
warp_6=`   float2 pow = float2(pow(moduz, ex)*cos(thetaz*ex), pow(moduz, ex)*sin(thetaz*ex));
warp_7=`   return pow;
warp_8=` }
warp_9=`
warp_10=`float2 uv2 (float2 uvi){float2 tmp, z;
warp_11=`  z = (uvi-0.5)*2;
warp_12=`  tmp = cpow(-abs(z+.0),.5);
warp_13=`  tmp = -.2 + (1 - abs( frac( tmp * q10 ) * 2 - q11 )-q12);
warp_14=`  return frac(tmp);
warp_15=`}
warp_16=`
warp_17=`float3 MyGet (float2 uvi) {
warp_18=`  return lerp(GetPixel(uvi),GetBlur1(uvi),.2);
warp_19=`};
warp_20=`
warp_21=`
warp_22=`shader_body {
warp_23=`
warp_24=`ret.r = MyGet(uv2((uv-.00)+.0)).r*.9;
warp_25=`ret.r += .3*saturate(1-2*rad) + .04;
warp_26=`
warp_27=`ret.g = MyGet(uv2((uv-.5)*1+.5)).g*.9 *saturate(rad*4) ;
warp_28=`ret.g += .35*exp(-pow(12*(uv.x-.5),2.4)) * (1-pow(ret.g,4));
warp_29=`
warp_30=`ret += (tex2D (sampler_noise_lq,uv)-.0)*.01;
warp_31=`
warp_32=`ret.b = 0;
warp_33=`}
comp_1=`#define sat saturate
comp_2=`static const float tele = q31; 
comp_3=`static const float2 k1 = float2(8,16);  
comp_4=`static const float quality = 6, depth = q28/tele, maxdist = 8, dist0 = .5, hordist = 10;
comp_5=`float3 neu, rsl0, rsl, rsl2, rsl3, rsl4, ret1, screen3, sun, sky;
comp_6=`float2 dz, uv1, uv2;
comp_7=`float  dist, lprof,noise,mask, fog, delta, gmask,gmask2,water,sun0;
comp_8=`float  cloud, cloud2, bird, refl, dc;
comp_9=`static const float2 hor = float2 (0.002,0);
comp_10=`static const float2 ver = float2 (0,0.002);
comp_11=`static const float2 mov = float2 (q25,q26);
comp_12=`static const float day = q21, night = 1-day;
comp_13=`static const float3 lightcol = saturate(float3 (1+day,.4+day,.2+day));
comp_14=`static const float3 fogcol = lerp(lightcol,lightcol.bgr,q24)*.8 + .6;
comp_15=`static const float2 fogdens = float2(q23,(1-q23)*4);
comp_16=`static const float3 wcol = .5 + .5*(rand_preset.xyz-.5);
comp_17=`static const float3 t = float3(q14,q15,q16);
comp_18=`static const float3 s = float3(q17,q18,q19);
comp_19=`static const float3 ts = -cross(s,t);
comp_20=`
comp_21=`float3 project  (float dist) {float z, tmp; 
comp_22=`  tmp = mul(-s,screen3);
comp_23=`  z = dist/(abs(tmp)+dist0/hordist)*sign(tmp);
comp_24=`  gmask = saturate(z + maxdist) * (z <= 0); 
comp_25=`  return float3(mul(float2x3(ts,t),cross(s*q27,screen3))*z,-z/hordist);}
comp_26=`
comp_27=`float3 project2  (float dist) {float z, tmp; 
comp_28=`  tmp = mul(-s,screen3-float3(0,.03,0));
comp_29=`  z = dist/(abs(tmp)+dist0/hordist)*sign(tmp);
comp_30=`  z = pow(z,.7)*sign(z)*2;
comp_31=`  gmask2 = (z >= -maxdist) * (z <= maxdist); //#
comp_32=`  return float3(mul(float2x3(ts,t),cross(s,screen3))*-abs(z),-z/hordist);} //#achtung gmask2 weg wg. sun
comp_33=`
comp_34=`float noise4 (float2 uvi) { float n1,n2,n3,n4,n5,zv; zv = 0.004*time;
comp_35=`  n1 = lum(tex2D(sampler_noise_hq, (uvi)));
comp_36=`  n2 = lum(tex2D(sampler_noise_hq, (uvi*2+zv)));
comp_37=`  n3 = lum(tex2D(sampler_noise_hq, (uvi*4+zv)));
comp_38=`  n4 = lum(tex2D(sampler_noise_hq, (uvi*8+zv)));
comp_39=`  n5 = lum(tex2D(sampler_noise_hq, (uvi*16+zv)));
comp_40=`  return n1 + n2/2 + n3/4 + n4/8 +0*n5/16 - .5;}
comp_41=`
comp_42=`shader_body {screen3 = float3 ((uv-float2(.5,.5-q32))*aspect.xy+float2(0,-.05*pow(uv.x-.5,2)),tele);
comp_43=`
comp_44=`//PROJEKTION LAND
comp_45=`dist = dist0;
comp_46=`for (int m=1; m <= quality; m++) {
comp_47=`  rsl0 = project(dist);
comp_48=`  rsl = rsl0 +float3(mov,0);
comp_49=`  lprof =  lum(GetBlur1(frac(rsl.xy)).rg)-.5 ; //mittelwert null !#
comp_50=`  dist += -lprof/quality*depth;//rsl3.z; //#
comp_51=`}
comp_52=`neu = max(gmask,gmask2)*GetPixel(rsl.xy)*float3(1,1,0);
comp_53=`
comp_54=`//WASSER
comp_55=`water = sat(2.5+sin(2*rsl.xy)-8*neu.g);
comp_56=`float2 ripple = tex2D (sampler_noise_hq,rsl.xy*(12+lprof*.1)-.2*time).rg;;
comp_57=`rsl.xy += water* .006*ripple*(1);
comp_58=`neu = lerp(neu,sat(lum(neu.rg)*wcol),water);
comp_59=`float reflmask = saturate(2*water+4*(neu.r-1.5*neu.g))*gmask;
comp_60=`
comp_61=`rsl3 = project2(dist0); //benoetigt fuer delta, sun etc.
comp_62=`delta = abs(.2/rsl3.z)*gmask;
comp_63=`//delta = (1-abs(rsl3.z))*gmask;
comp_64=`dz.x = lum(GetPixel (frac(rsl.xy-delta*hor)).rg*k1) - lum(GetPixel (frac(rsl.xy+delta*hor)).rg*k1);
comp_65=`dz.y = lum(GetPixel (frac(rsl.xy-delta*ver)).rg*k1) - lum(GetPixel (frac(rsl.xy+delta*ver)).rg*k1);
comp_66=`//dz.x += .5*lum(GetBlur1 (frac(rsl.xy-delta*hor)).rg*k1) - .5*lum(GetBlur1 (frac(rsl.xy+delta*hor)).rg*k1);
comp_67=`//dz.y += .5*lum(GetBlur1 (frac(rsl.xy-delta*ver)).rg*k1) - .5*lum(GetBlur1 (frac(rsl.xy+delta*ver)).rg*k1);
comp_68=`
comp_69=`//dz.x = 0; //nicht so toll aber geringere GPU-Last
comp_70=`dz *= q30;
comp_71=`
comp_72=`//PROJEKTION HIMMEL
comp_73=`rsl4 = rsl3 + float3(dz*16*length(dz),0)*gmask;
comp_74=`rsl2 =  rsl4  + float3(mov,0);
comp_75=`uv2  =  rsl2.xy/16 +.025*noise4(rsl2.xy/8);
comp_76=`cloud  = lum(tex2D (sampler_noise_hq,uv2));
comp_77=`cloud2 = lum(tex2D (sampler_noise_hq,uv2 + float2(0,-.008)*night));
comp_78=`dc    = cloud-cloud2;
comp_79=`cloud = pow(sat(cloud-q20),1.2);
comp_80=`
comp_81=`neu *= sat(day*.4+.15*q5);
comp_82=`//neu += pow(sat(.05/neu.g),4)*.8;
comp_83=`
comp_84=`//SCHATTENWURF
comp_85=`neu -= dz.y* gmask*(.2+night)*lightcol;
comp_86=`
comp_87=`//BELEUCHTUNG
comp_88=`noise = noise4 (rsl.xy/16-time*.02)-.25;
comp_89=`
comp_90=`//HIMMEL
comp_91=`float3 rsl5 = float3(rsl3.xy/hordist,rsl3.z) ;
comp_92=`sun0 = .15/length(rsl5+dc/2+float2(0,night*.6)) * night;
comp_93=`sun = pow(sun0,1)*lightcol;
comp_94=`
comp_95=`float sky00 = pow(rsl5.x,2)+pow(rsl5.y-night,2)+.5; //richt.abh.#
comp_96=`float3 skyb = pow(sky00* (day+0.25)/4,float3(.9,.8,.4)+.2*(slow_roam_sin-.5)) ;;
comp_97=`float3 sky0 =  (sun)*sat(1-gmask*4) + skyb;
comp_98=`sky = skyb* sat(1-sun0*1-cloud) + sun + sat(.75+2*day-rsl3.y/hordist)*(cloud*q5*lightcol + dc);
comp_99=`
comp_100=`//FLASH
comp_101=`//sky += abs(.04/length(rsl5.xy+dc*4-.5*rand_frame.xy)) * float3(0,.25,1) *(bass>=1);
comp_102=`
comp_103=`//REFLEKTION
comp_104=`neu += sat(reflmask * (.4+.2*day)*(sky));
comp_105=`
comp_106=`ret1 = lerp(neu,sky,saturate(1-2*gmask));
comp_107=`
comp_108=`
comp_109=`//HORIZONT
comp_110=`noise = tex2D (sampler_noise_hq,rsl.xy/4+.006*time).r-.5; //# unmoduliertes rsl nehmen !
comp_111=`dist = sat(pow(abs(rsl5.z-.04),fogdens.y*(2-gmask))); //blau: kuehler morgennebel #
comp_112=`ret1 = lerp(ret1, sat(sky0+lum(sky0)*fogcol), fogdens.x*sat(dist-gmask*(lprof*2 -noise/2)));
comp_113=`
comp_114=`//Vogel
comp_115=`bird = GetPixel((uv-.5)+.5).b;
comp_116=`ret1 = ret1 * sat(1-2*bird)+saturate(GetPixel(uv).b - GetPixel(uv-.002).b)*0;
comp_117=`
comp_118=`
comp_119=`
comp_120=`ret = 1-exp(-ret1*1.5+.15); //# abends hier
comp_121=`
comp_122=`}
comp_123=`written by martin
comp_124=`END
