MILKDROP_PRESET_VERSION=201 PSVERSION=3 PSVERSION_WARP=3 PSVERSION_COMP=2 [preset00] fRating=1.000 fGammaAdj=1.000 fDecay=0.960 fVideoEchoZoom=1.007 fVideoEchoAlpha=0.000 nVideoEchoOrientation=1 nWaveMode=2 bAdditiveWaves=0 bWaveDots=1 bWaveThick=0 bModWaveAlphaByVolume=0 bMaximizeWaveColor=0 bTexWrap=1 bDarkenCenter=0 bRedBlueStereo=0 bBrighten=0 bDarken=1 bSolarize=0 bInvert=0 fWaveAlpha=0.000 fWaveScale=0.012 fWaveSmoothing=0.900 fWaveParam=0.000 fModWaveAlphaStart=0.750 fModWaveAlphaEnd=0.950 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.500 wave_g=0.400 wave_b=0.300 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=1.000 ib_size=0.000 ib_r=0.250 ib_g=0.250 ib_b=0.250 ib_a=0.000 nMotionVectorsX=3.000 nMotionVectorsY=2.000 mv_dx=0.020 mv_dy=-0.020 mv_l=0.150 mv_r=0.490 mv_g=0.480 mv_b=0.300 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=0.100 wavecode_0_g=1.000 wavecode_0_b=0.700 wavecode_0_a=1.000 wave_0_per_point1=n=sample*6.283; wave_0_per_point2=phs=-sample * 0.2; wave_0_per_point3=tm=q1 + phs; wave_0_per_point4= wave_0_per_point5=flip=flip+1; wave_0_per_point6=flip=flip*below(flip,2); wave_0_per_point7= wave_0_per_point8=xp=0; wave_0_per_point9=yp=flip*0.1 + (sin(tm)*0.5 + 0.5)*0.2; wave_0_per_point10=zp=0; wave_0_per_point11= wave_0_per_point12=//wrist movement; wave_0_per_point13=ang=sin(tm*2)*0.5 +0.5; wave_0_per_point14= wave_0_per_point15=xq=xp; wave_0_per_point16=yq=yp*sin(ang) + zp*cos(ang); wave_0_per_point17=zq=yp*cos(ang) - zp*sin(ang); wave_0_per_point18=yq=yp; wave_0_per_point19=zq=zp; wave_0_per_point20= wave_0_per_point21=ang=tm*8; wave_0_per_point22=xp=xq*sin(ang) + yq*cos(ang); wave_0_per_point23=yp=xq*cos(ang) - yq*sin(ang); wave_0_per_point24=zp=zq; wave_0_per_point25= wave_0_per_point26=//forearm movement; wave_0_per_point27=zp=zp-0.3; wave_0_per_point28=ang=3.14 + sin(tm*2 - 0.5)*1.5; wave_0_per_point29=xq=xp; wave_0_per_point30=yq=yp*sin(ang) + zp*cos(ang); wave_0_per_point31=zq=yp*cos(ang) - zp*sin(ang); wave_0_per_point32= wave_0_per_point33=//upper arm twist wave_0_per_point34=ang=-1.0 + cos(tm*3 + 0.5); wave_0_per_point35=xp=xq*sin(ang) + yq*cos(ang); wave_0_per_point36=yp=xq*cos(ang) - yq*sin(ang); wave_0_per_point37=zp=zq; wave_0_per_point38= wave_0_per_point39=//upper arm outward; wave_0_per_point40=zp=zp-0.35; wave_0_per_point41=ang=cos(tm*2)*0.75 - 1.05; wave_0_per_point42=xq=xp*sin(ang) + zp*cos(ang); wave_0_per_point43=yq=yp; wave_0_per_point44=zq=xp*cos(ang) - zp*sin(ang); wave_0_per_point45= wave_0_per_point46=//upper arm up down; wave_0_per_point47=ang=cos(tm)*0.5 - 0.5; wave_0_per_point48=xp=xq; wave_0_per_point49=yp=yq*cos(ang) - zq*sin(ang); wave_0_per_point50=zp=yq*sin(ang) + zq*cos(ang); wave_0_per_point51= wave_0_per_point52=//xp=xq;yp=yq;zp=zq; wave_0_per_point53= wave_0_per_point54= wave_0_per_point55=//project into screenspace and draw on screen wave_0_per_point56=zp=zp+2; wave_0_per_point57=xs=xp/zp; wave_0_per_point58=ys=yp/zp; wave_0_per_point59= wave_0_per_point60=x=xs+0.5; wave_0_per_point61=y=ys*1.3+0.5; wave_0_per_point62= wave_0_per_point63= wave_0_per_point64=a=(1-sample)*flip; wave_0_per_point65= wave_0_per_point66=b=b+pow(1-sample,2)*0.3 wavecode_1_enabled=0 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=0.200 wavecode_1_g=1.000 wavecode_1_b=0.600 wavecode_1_a=1.000 wave_1_per_point1=n=sample*6.283; wave_1_per_point2=phs=-sample * 0.2; wave_1_per_point3=tm=q1 + phs; wave_1_per_point4= wave_1_per_point5=flip=flip+1; wave_1_per_point6=flip=flip*below(flip,2); wave_1_per_point7= wave_1_per_point8=xp=0; wave_1_per_point9=yp=flip*0.1 + (sin(tm)*0.5 + 0.5)*0.2; wave_1_per_point10=yp=-yp; wave_1_per_point11=zp=0; wave_1_per_point12= wave_1_per_point13=//wrist movement; wave_1_per_point14=ang=sin(tm*2)*0.5 +0.5; wave_1_per_point15= wave_1_per_point16=xq=xp; wave_1_per_point17=yq=yp*sin(ang) + zp*cos(ang); wave_1_per_point18=zq=yp*cos(ang) - zp*sin(ang); wave_1_per_point19=yq=yp; wave_1_per_point20=zq=zp; wave_1_per_point21= wave_1_per_point22=ang=tm*8; wave_1_per_point23=xp=xq*sin(ang) + yq*cos(ang); wave_1_per_point24=yp=xq*cos(ang) - yq*sin(ang); wave_1_per_point25=zp=zq; wave_1_per_point26= wave_1_per_point27=//forearm movement; wave_1_per_point28=zp=zp-0.3; wave_1_per_point29=ang=3.14 + sin(tm*2 - 0.5)*1.5; wave_1_per_point30=xq=xp; wave_1_per_point31=yq=yp*sin(ang) + zp*cos(ang); wave_1_per_point32=zq=yp*cos(ang) - zp*sin(ang); wave_1_per_point33= wave_1_per_point34=//upper arm twist wave_1_per_point35=ang=-1.0 + cos(tm*3 + 0.5); wave_1_per_point36=xp=xq*sin(ang) + yq*cos(ang); wave_1_per_point37=yp=xq*cos(ang) - yq*sin(ang); wave_1_per_point38=zp=zq; wave_1_per_point39= wave_1_per_point40=//upper arm outward; wave_1_per_point41=zp=zp-0.35; wave_1_per_point42=ang=cos(tm*2)*0.75 - 1.05; wave_1_per_point43=xq=xp*sin(ang) + zp*cos(ang); wave_1_per_point44=yq=yp; wave_1_per_point45=zq=xp*cos(ang) - zp*sin(ang); wave_1_per_point46= wave_1_per_point47=//upper arm up down; wave_1_per_point48=ang=cos(tm)*0.5 - 0.5; wave_1_per_point49=xp=xq; wave_1_per_point50=yp=yq*cos(ang) - zq*sin(ang); wave_1_per_point51=zp=yq*sin(ang) + zq*cos(ang); wave_1_per_point52= wave_1_per_point53=//xp=xq;yp=yq;zp=zq; wave_1_per_point54= wave_1_per_point55= wave_1_per_point56=//project into screenspace and draw on screen wave_1_per_point57=zp=zp+2; wave_1_per_point58=xs=xp/zp; wave_1_per_point59=ys=yp/zp; wave_1_per_point60= wave_1_per_point61=x=xs+0.5; wave_1_per_point62=y=ys*1.3+0.5; wave_1_per_point63= wave_1_per_point64= wave_1_per_point65=a=(1-sample)*flip; wave_1_per_point66= wave_1_per_point67= wave_1_per_point68=b=b+pow(1-sample,2)*0.3 wave_1_per_point69= wavecode_2_enabled=0 wavecode_2_samples=512 wavecode_2_sep=0 wavecode_2_bSpectrum=0 wavecode_2_bUseDots=0 wavecode_2_bDrawThick=1 wavecode_2_bAdditive=1 wavecode_2_scaling=1.00000 wavecode_2_smoothing=0.50000 wavecode_2_r=1.000 wavecode_2_g=0.600 wavecode_2_b=0.100 wavecode_2_a=1.000 wave_2_per_point1=n=sample*6.283; wave_2_per_point2=tm=q1; wave_2_per_point3=phs=-sample*0.5; wave_2_per_point4= wave_2_per_point5=flip=flip+1; wave_2_per_point6=flip=flip*below(flip,2); wave_2_per_point7= wave_2_per_point8=xp=0; wave_2_per_point9=yp=flip*0.1; wave_2_per_point10=zp=0; wave_2_per_point11= wave_2_per_point12=//wrist movement; wave_2_per_point13=ang=sin(tm*2+phs - 2)*0.5 +0.5 + 2; wave_2_per_point14= wave_2_per_point15=xq=xp; wave_2_per_point16=yq=yp*sin(ang) + zp*cos(ang); wave_2_per_point17=zq=yp*cos(ang) - zp*sin(ang); wave_2_per_point18= wave_2_per_point19=ang=cos(tm*2+phs - 2)*1.5 ; wave_2_per_point20=xp=xq*sin(ang) + yq*cos(ang); wave_2_per_point21=yp=xq*cos(ang) - yq*sin(ang); wave_2_per_point22=zp=zq; wave_2_per_point23= wave_2_per_point24=//forearm movement; wave_2_per_point25=zp=zp-0.3; wave_2_per_point26=ang=3.14 + sin(tm*2+phs - 0.5)*1.5; wave_2_per_point27=xq=xp; wave_2_per_point28=yq=yp*sin(ang) + zp*cos(ang); wave_2_per_point29=zq=yp*cos(ang) - zp*sin(ang); wave_2_per_point30= wave_2_per_point31=//upper arm twist wave_2_per_point32=ang=-1.0 + cos(tm*3 + 0.5 +phs + 0.5); wave_2_per_point33=xp=xq*sin(ang) + yq*cos(ang); wave_2_per_point34=yp=xq*cos(ang) - yq*sin(ang); wave_2_per_point35=zp=zq; wave_2_per_point36= wave_2_per_point37=//upper arm outward; wave_2_per_point38=zp=zp-0.35; wave_2_per_point39=ang=cos(tm*2+phs)*0.75 - 1.05; wave_2_per_point40=xq=xp*sin(ang) + zp*cos(ang); wave_2_per_point41=yq=yp; wave_2_per_point42=zq=xp*cos(ang) - zp*sin(ang); wave_2_per_point43= wave_2_per_point44=//upper arm up down; wave_2_per_point45=ang=cos(tm+phs)*0.5 - 0.5; wave_2_per_point46=xp=xq; wave_2_per_point47=yp=yq*cos(ang) - zq*sin(ang); wave_2_per_point48=zp=yq*sin(ang) + zq*cos(ang); wave_2_per_point49= wave_2_per_point50=//xp=xq;yp=yq;zp=zq; wave_2_per_point51= wave_2_per_point52= wave_2_per_point53=//project into screenspace and draw on screen wave_2_per_point54=zp=zp+2; wave_2_per_point55=xs=xp/zp; wave_2_per_point56=ys=yp/zp; wave_2_per_point57= wave_2_per_point58=x=xs+0.5; wave_2_per_point59=y=ys*1.3+0.5; wave_2_per_point60= wave_2_per_point61= wave_2_per_point62=a=(1-sample)*0.05 wave_2_per_point63= 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=1 wavecode_3_scaling=1.00000 wavecode_3_smoothing=0.50000 wavecode_3_r=1.000 wavecode_3_g=0.300 wavecode_3_b=0.100 wavecode_3_a=1.000 wave_3_per_point1=n=sample*6.283; wave_3_per_point2=tm=q1 ; wave_3_per_point3=phs=-sample*0.5; wave_3_per_point4= wave_3_per_point5=flip=flip+1; wave_3_per_point6=flip=flip*below(flip,2); wave_3_per_point7= wave_3_per_point8=xp=0; wave_3_per_point9=yp=flip*0.1; wave_3_per_point10=zp=0; wave_3_per_point11= wave_3_per_point12=//wrist movement; wave_3_per_point13=ang=sin(tm*2+phs-2)*0.5 +0.5 + 2; wave_3_per_point14= wave_3_per_point15=xq=xp; wave_3_per_point16=yq=yp*sin(ang) + zp*cos(ang); wave_3_per_point17=zq=yp*cos(ang) - zp*sin(ang); wave_3_per_point18= wave_3_per_point19=ang=cos(tm*2+phs-2)*1.5; wave_3_per_point20=xp=xq*sin(ang) + yq*cos(ang); wave_3_per_point21=yp=xq*cos(ang) - yq*sin(ang); wave_3_per_point22=zp=zq; wave_3_per_point23= wave_3_per_point24=//forearm movement; wave_3_per_point25=zp=zp-0.3; wave_3_per_point26=ang=3.14 + sin(tm*2+phs-0.5)*1.5; wave_3_per_point27=xq=xp; wave_3_per_point28=yq=yp*sin(ang) + zp*cos(ang); wave_3_per_point29=zq=yp*cos(ang) - zp*sin(ang); wave_3_per_point30= wave_3_per_point31=//upper arm twist wave_3_per_point32=ang=-1.0 + cos(tm*3 + 0.5 +phs); wave_3_per_point33=xp=xq*sin(ang) + yq*cos(ang); wave_3_per_point34=yp=xq*cos(ang) - yq*sin(ang); wave_3_per_point35=zp=zq; wave_3_per_point36= wave_3_per_point37=//upper arm outward; wave_3_per_point38=zp=zp-0.35; wave_3_per_point39=ang=cos(tm*2+phs)*0.75 - 1.05; wave_3_per_point40=xq=xp*sin(ang) + zp*cos(ang); wave_3_per_point41=yq=yp; wave_3_per_point42=zq=xp*cos(ang) - zp*sin(ang); wave_3_per_point43= wave_3_per_point44=//upper arm up down; wave_3_per_point45=ang=cos(tm+phs)*0.5 - 0.5; wave_3_per_point46=xp=xq; wave_3_per_point47=yp=yq*cos(ang) - zq*sin(ang); wave_3_per_point48=zp=yq*sin(ang) + zq*cos(ang); wave_3_per_point49= wave_3_per_point50=//xp=xq;yp=yq;zp=zq; wave_3_per_point51= wave_3_per_point52= wave_3_per_point53=//project into screenspace and draw on screen wave_3_per_point54=zp=zp+2; wave_3_per_point55=xs=xp/zp; wave_3_per_point56=ys=yp/zp; wave_3_per_point57= wave_3_per_point58=x=-xs+0.5; wave_3_per_point59=y=ys*1.3+0.5; wave_3_per_point60= wave_3_per_point61= wave_3_per_point62=a=(1-sample)*0.05; wave_3_per_point63= shapecode_0_enabled=1 shapecode_0_sides=7 shapecode_0_additive=0 shapecode_0_thickOutline=1 shapecode_0_textured=1 shapecode_0_num_inst=1 shapecode_0_x=0.500 shapecode_0_y=0.500 shapecode_0_rad=1.36937 shapecode_0_ang=0.75398 shapecode_0_tex_ang=1.88496 shapecode_0_tex_zoom=0.64544 shapecode_0_r=1.000 shapecode_0_g=1.000 shapecode_0_b=1.000 shapecode_0_a=1.000 shapecode_0_r2=1.000 shapecode_0_g2=1.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.250 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=start = 1; per_frame_init_2=SysTime = 0; per_frame_init_3=Prog = 0; per_frame_init_4=n = 0; per_frame_init_5=loop (150000, per_frame_init_6= gmegabuf(n) = 0; per_frame_init_7= megabuf(n) = 0; per_frame_init_8=n = n+1;); per_frame_init_9= per_frame_init_10= per_frame_init_11=MaxZw = 1024; reg01 = MaxZw; per_frame_init_12=MaxZw2 = 800; reg02 = MaxZw2; per_frame_init_13=MaxShape = MaxZw * 0.9; per_frame_init_14=MaxShap2 = MaxZw2 * 0.8; per_frame_init_15=YCam = 3; reg05 = YCam; //Hoehe Blickpunkt per_frame_init_16=fov = .7; reg06 = fov; //Blickfeld per_frame_init_17=MaxDist = 120; reg07 = MaxDist; per_frame_init_18=AngCam = -.0; //vert. Kamerawinkel; pos: nach unten per_frame_init_19= per_frame_init_20=sbase = 20000; reg03 = sbase;//Buesche per_frame_init_21=cbase = 50000; //Konfig-Parameter Baum & Busch per_frame_init_22=cbase2 = 51000; //Konfig-Parameter Baum & Busch per_frame_init_23=csize = 10; per_frame_init_24= per_frame_init_25=//Datensatz Zweig per_frame_init_26=recsize = 12; reg00 = recsize; per_frame_init_27=//0,1,2 : Koordinaten Spitze x,y,z per_frame_init_28=//3,4,5 : Wuchsrichtung dx,dy,dz per_frame_init_29=//6 : Dicke per_frame_init_30=//7 : Zieldicke nach Abschluss Uebergang per_frame_init_31=//8: Alter per_frame_init_32=//9: Zweiglaenge ges. per_frame_init_33=//10: Conf-Record (Kraus, Hang ...) per_frame_init_34= per_frame_init_35=IstZw = 0; IstZw2 = 0; start = 1; per_frame_init_36= per_frame_init_37=//Parameter Zweige per_frame_init_38=Kraus = .2; //Krauser Wuchs, 0..1; per_frame_init_39=Hang = .02; //Kleinere Zweige wachsen nach oben / unten, -1...1 per_frame_init_40=ZwLen = 13; //Wuchszeit gesamt, 2...30 per_frame_init_41=Verzw = 12; //Tendenz zur Verzweigung, 3...30 per_frame_init_42=Straight = .86; //Senkrechter Wuchs mit einem Hauptstamm; 0.5...85; per_frame_init_43=Waag = .8; //kleine Werte: waagerechte Verzweig per_frame_init_44= per_frame_init_45=//Baeume per_frame_init_46=n = cbase; per_frame_init_47=//Kraus //Hang //Wuchszeit Verwz; Straight Waag per_frame_init_48=gmegabuf(n)=.22; gmegabuf(n+1)=.0; gmegabuf(n+2)=12; gmegabuf(n+3)=12; gmegabuf(n+4)=.87; gmegabuf(n+5)=.85; per_frame_init_49=n += csize; per_frame_init_50=gmegabuf(n)=.05; gmegabuf(n+1)=-0; gmegabuf(n+2)=4; gmegabuf(n+3)=17; gmegabuf(n+4)=0.9; gmegabuf(n+5)=.8; per_frame_init_51= per_frame_init_52=//Buesche per_frame_init_53=n = cbase2; per_frame_init_54=//Kraus //Hang //Wuchszeit Verwz; Straight Waag per_frame_init_55=gmegabuf(n)=.2; gmegabuf(n+1)=.0; gmegabuf(n+2)=3; gmegabuf(n+3)=32; gmegabuf(n+4)=.6; gmegabuf(n+5)=.7; per_frame_init_56=n += csize; per_frame_init_57= per_frame_init_58=tstart = rand (1000)-500; per_frame_1=dec_m = pow (0.85, 30/fps); dec_s = pow (0.95, 30/fps); per_frame_2=speed0 = 0.2 + 0.06*sin(time*0.083) ; //##spielen, 0.15... 0.3 per_frame_3=SysTime = SysTime + (exp(-Bild) * 0.3+ 0.03)/30; per_frame_4=if (SysTime >= 1.2, SysTime = 0; Start = 1, 0); per_frame_5=RelZ = max(0,pow(1-SysTime,1.4)); per_frame_6=SysZ = RelZ*MaxDist+.1; per_frame_7=copyable = (reg50 <= 400); per_frame_8= per_frame_9= //-------------- Gelaende definieren ------------------ per_frame_10=if (Start == 1, per_frame_11= n = 0; loop (MaxZw, megabuf (n+6) = 0; n+= recsize); per_frame_12= n = sbase; loop (MaxZw2, megabuf (n+6) = 0; n+= recsize); per_frame_13= fov = rand(10)/15 + .5;reg06 = fov; per_frame_14= YCam = 1 + rand(8); reg05 = YCam; ///### per_frame_15= AngCam = (YCam-7) * .015; //neg: nach oben per_frame_16= NumTree = 0; per_frame_17= reg50 = 0; //(Randueberschr. aus shape 1) per_frame_18= CopyNow = 0; per_frame_19= reg10 = (rand(100)/100-.3)*0.2; per_frame_20= reg11 = (rand (20)-10)*0.0075; per_frame_21= reg12 = (rand (20)-10)*0.01; per_frame_22= reg13 = (rand (10)-5)*0.01; per_frame_23= reg14 = ((rand (100)/100)-.4)*0.008; per_frame_24= par1 = rand(10); //fuer Weg per_frame_25= par2 = rand(6); per_frame_26=,0); per_frame_27= per_frame_28=//-------------- Baeume pflanzen ------------------ per_frame_29=if ((SysZ > 25*fov) && (frame%20==0) && (IstZw < MaxZw/3), per_frame_30= base = nextfree*recsize; per_frame_31= NumTree += 1; per_frame_32= Prog = int(NumTree/10); per_frame_33= bpow = sin(prog)*.05 + .33; per_frame_34= z0 = SysZ; per_frame_35= x0 = (rand(50)/50-.5)*z0/fov*.8; per_frame_36=// x0 = WegX + 12 * ((NumTree%2)-0.5); per_frame_37= y0 = reg10*z0*(sin(x0*reg11 + z0*reg13)) * sin(z0*reg12+reg13) + pow(x0,2)*reg14; //reg13 im zweiten Term ? per_frame_38= Weg = max(min(4-abs(WegX-x0),1),0); per_frame_39= if (weg == 0, per_frame_40= megabuf (base) = x0; megabuf (base+1) = y0; megabuf (base+2) = z0; per_frame_41= megabuf (base+3) = 0; megabuf (base+4) = 1; megabuf (base+5) = 0; per_frame_42= megabuf(base+6) = 1.5; megabuf(base+7) = 0.8 ; megabuf(base+8) = 0; per_frame_43= megabuf(base+9) = 0; megabuf(base+10) = 0; megabuf(base+11) = y0; per_frame_44= ,0); per_frame_45=,0); per_frame_46= per_frame_47=//-------------- Wachstum / Verzweigung Baeume ------------------ per_frame_48=n = 0; loop (MaxZw, gmegabuf (n+6) = 0; n+=recsize); per_frame_49=mindex = 0; per_frame_50=while(exec2( per_frame_51=n = 0; nextfree = IstZw + 1; per_frame_52=loop (min (MaxZw,IstZW), per_frame_53= base = n*recsize; per_frame_54= Quer = megabuf (base + 6); RQuer = sqrt (Quer); per_frame_55= Alter = megabuf (base + 8); per_frame_56= Height = megabuf(base+1)-megabuf(base+11); per_frame_57= Dist = megabuf (base + 2); per_frame_58= if (Quer > 0, per_frame_59= cb = cbase+csize* megabuf(base + 10); per_frame_60= Kraus=gmegabuf(cb); Hang=gmegabuf(cb+1); ZwLen=gmegabuf(cb+2); per_frame_61= Verzw =gmegabuf(cb+3); Straight=gmegabuf(cb+4); Waag =gmegabuf(cb+5); per_frame_62= speed = speed0 * pow(Quer,bpow); per_frame_63= i = 0; loop (3, megabuf(base+i) += megabuf(base+3+i) * speed; i+=1); per_frame_64= megabuf(base+3) += (rand(100)/100-.5)*Kraus*(1-RQuer); per_frame_65= megabuf(base+4) += (rand(100)/100-.5)*Kraus*(1-RQuer) +(.002/Quer)*Hang; per_frame_66= megabuf(base+5) += (rand(100)/100-.5)*Kraus*(1-RQuer); per_frame_67= len = sqrt (pow(megabuf(base+3),2)+pow(megabuf(base+4),2)+pow(megabuf(base+5),2)); per_frame_68= i = 0; loop (3, megabuf(base+3+i) /= len; i+=1); per_frame_69= dec = 0.28; per_frame_70= megabuf (base + 6) = (0.996-dec)*megabuf (base + 6) + dec* megabuf(base + 7); per_frame_71= megabuf (base + 8) += 1; megabuf (base + 9) += len; per_frame_72= ,0); per_frame_73= if ((Quer <=0.000003*Dist) ||(Quer < 0.00001*Dist) && (IstZw > 0.9*MaxZw) per_frame_74= ||((Quer < 0.003) && ((rand(1000000*Quer*ZwLen) < 20*megabuf (base +9)))), per_frame_75= megabuf (base + 6) = 0; per_frame_76= //ausgewachsen, Zweig kann ausgelistet werden per_frame_77= , per_frame_78= //ansonsten: Verzweigung ? per_frame_79= if ( (rand (500 + 500 * (1-quer)) < Verzw*Alter ) && (Height > 0), per_frame_80= //Suche freien Platz in Umgebung per_frame_81= m = nextfree; nextfree += 1; per_frame_82= if ((m < MaxZw), //noch ein Platz frei ? per_frame_83= newbase = m*recsize; per_frame_84= //Anfangsbed. des neuen Zweiges setzen per_frame_85= i = 0; loop (3, megabuf(newbase+i) = megabuf(base+i); i+=1); per_frame_86= per_frame_87= //Dicke per_frame_88= ran = straight + (1-straight)*2*(rand(100)/100-.5); per_frame_89= megabuf (newbase + 6) = megabuf (base + 6); per_frame_90= megabuf (base + 7) = megabuf (base + 6) * (ran); per_frame_91= megabuf (newbase + 7) = megabuf (base + 6) * (1-ran) ; per_frame_92= per_frame_93= //Richtung per_frame_94= megabuf(newbase+3) = megabuf(base+3)+ (rand(100)/100-.5); per_frame_95= megabuf(newbase+4) = megabuf(base+4)+ (rand(100)/100-.5); per_frame_96= megabuf(newbase+5) = megabuf(base+5)+ (rand(100)/100-.5); per_frame_97= megabuf(newbase+4) *= Waag; per_frame_98= per_frame_99= len = sqrt (pow(megabuf(newbase+3),2)+pow(megabuf(newbase+4),2)+pow(megabuf(newbase+5),2)); per_frame_100= i = 0; loop (3, megabuf(newbase+3+i) /= len; i+=1); per_frame_101= per_frame_102= /// Alter per_frame_103= megabuf (base + 8) = 0; megabuf (newbase + 8) = 0; megabuf (newbase + 9)= 0; per_frame_104= megabuf (newbase + 10)= megabuf (base + 10);; per_frame_105= megabuf (newbase + 11)= megabuf (base + 11);; per_frame_106= ,0); per_frame_107= ,0)); per_frame_108= n += 1; per_frame_109=); per_frame_110=//Loeschen gmegabuf, komprimieren, umkopieren und zuruekkopieren per_frame_111=n = 0; m = 0; k= 0; IstZw = 0; per_frame_112=loop (MaxZw, per_frame_113= if (megabuf (n + 6) > 0, per_frame_114= IstZW += 1; k = 0; per_frame_115= loop (recsize, per_frame_116= gmegabuf(mindex+k) = megabuf(n+k); per_frame_117= megabuf (m+k) = gmegabuf(mindex+k); per_frame_118= k += 1;); per_frame_119= if (!(m==n), megabuf (n+6) = 0;,0); per_frame_120= m += recsize; mindex += recsize,0); per_frame_121= n += recsize; per_frame_122=);, (IstZW > 0) && (mindex/recsize < MaxShape))); //Ende B per_frame_123= per_frame_124= per_frame_125= per_frame_126=//-------------- Buesche pflanzen ------------------ per_frame_127=if ((SysZ > 10*fov) && (frame%17==0) && (IstZw2 < MaxZw2/3), per_frame_128= n = 0; per_frame_129= x00 = (rand(50)/50-.5); per_frame_130= loop (8, per_frame_131= base = (n+nextf2)*recsize+sbase; per_frame_132= z0 = SysZ; per_frame_133= x0 = (x00 + (rand(50)/50-.5)*.1)*z0; per_frame_134= y0 = reg10*z0*(sin(x0*reg11 + z0*reg13)) * sin(z0*reg12+reg13) + pow(x0,2)*fov*reg14; per_frame_135= y0 += -.001*rand(10); per_frame_136=// x0 *= MaxDist; y0 *= MaxDist; z0 *= MaxDist; per_frame_137= weg = WegX - x0; per_frame_138= weg = max(min(4-abs(weg),1),0); per_frame_139= if (weg == 0, per_frame_140= megabuf (base) = x0; megabuf (base+1) = y0; megabuf (base+2) = z0; per_frame_141= megabuf (base+3) = rand(100)/100-.5; megabuf (base+4) = 1; megabuf (base+5) = 0; per_frame_142= megabuf(base+6) = .02; megabuf(base+7) = .03; ; megabuf(base+8) = 4; per_frame_143= megabuf(base+9) = 0; megabuf(base+10) = 0; per_frame_144= ,0); per_frame_145= n+= 1;); per_frame_146=,0); per_frame_147= per_frame_148=//-------------- Wachstum / Verzweigung Buesche------------------ per_frame_149=n = sbase; loop (MaxZw2, gmegabuf (n+6) = 0; n+=recsize); per_frame_150=mindex2 = sbase; per_frame_151=while(exec2( per_frame_152=n = 0; nextf2 = IstZw2 + 1; per_frame_153=loop (min (MaxZw2,IstZW2), per_frame_154= base = n*recsize+sbase; per_frame_155= Quer = megabuf (base + 6); Alter = megabuf (base + 8); per_frame_156= if (Quer > 0, per_frame_157= cb = cbase2+csize*megabuf(base + 10); per_frame_158= Kraus=gmegabuf(cb); Hang=gmegabuf(cb+1); ZwLen=gmegabuf(cb+2); per_frame_159= Verzw =gmegabuf(cb+3); Straight=gmegabuf(cb+4); Waag =gmegabuf(cb+5); per_frame_160= speed = speed0 * pow(megabuf (base + 6),.32); per_frame_161= i = 0; loop (3, megabuf(base+i) += megabuf(base+3+i) * speed; i+=1); per_frame_162= megabuf(base+3) += (rand(100)/100-.5)*Kraus; per_frame_163= megabuf(base+4) += (rand(100)/100-.5)*Kraus +(.002/Quer)*Hang; per_frame_164= megabuf(base+5) += (rand(100)/100-.5)*Kraus; per_frame_165= len = sqrt (pow(megabuf(base+3),2)+pow(megabuf(base+4),2)+pow(megabuf(base+5),2)); per_frame_166= i = 0; loop (3, megabuf(base+3+i) /= len; i+=1); per_frame_167= megabuf (base + 9) += len; per_frame_168= dec = 0.3; per_frame_169= megabuf (base + 6) = (0.98-dec)*megabuf (base + 6) + dec* megabuf(base + 7); per_frame_170= megabuf (base + 8) += 1; per_frame_171= ,0); per_frame_172= if ((rand(1000000*Quer*ZwLen) < 50*megabuf (base +8) ), //ausgewachsen, Zweig kann ausgelistet werden per_frame_173= megabuf (base + 6) = 0; per_frame_174= , per_frame_175= //ansonsten: Verzweigung ? per_frame_176= if ( (rand (500 + 500 * (1-quer)) < Verzw*Alter), per_frame_177= //Suche freien Platz in Umgebung per_frame_178= m = nextf2; nextf2 += 1; per_frame_179= if ((m < MaxZw2), //noch ein Platz frei ? per_frame_180= newbase = m*recsize+sbase; per_frame_181= //Anfangsbed. des neuen Zweiges setzen per_frame_182= i = 0; loop (3, megabuf(newbase+i) = megabuf(base+i); i+=1); per_frame_183= per_frame_184= //Dicke per_frame_185= ran = straight + (1-straight)*2*(rand(100)/100-.5); per_frame_186= megabuf (newbase + 6) = megabuf (base + 6); per_frame_187= megabuf (base + 7) = megabuf (base + 6) * (ran); per_frame_188= megabuf (newbase + 7) = megabuf (base + 6) * (1-ran) ; per_frame_189= per_frame_190= //Richtung per_frame_191= megabuf(newbase+3) = megabuf(base+3)+ (rand(100)/100-.5); per_frame_192= megabuf(newbase+4) = megabuf(base+4)+ (rand(100)/100-.5); per_frame_193= megabuf(newbase+5) = megabuf(base+5)+ (rand(100)/100-.5); per_frame_194= megabuf(newbase+4) *= Waag; per_frame_195= per_frame_196= len = sqrt (pow(megabuf(newbase+3),2)+pow(megabuf(newbase+4),2)+pow(megabuf(newbase+5),2)); per_frame_197= i = 0; loop (3, megabuf(newbase+3+i) /= len; i+=1); per_frame_198= per_frame_199= /// Alter per_frame_200= megabuf (base + 8) = 0; megabuf (newbase + 8) = 0; megabuf (newbase + 9)= 0; per_frame_201= megabuf (newbase + 10)= megabuf (base + 10);; per_frame_202= ,0); per_frame_203= ,0)); per_frame_204= n += 1; per_frame_205=); per_frame_206= per_frame_207=//Loeschen gmegabuf, komprimieren, umkopieren und zuruekkopieren per_frame_208=n = sbase; m = sbase; k= 0; IstZw2 = 0; per_frame_209=loop (MaxZw2, per_frame_210= if (megabuf (n + 6) > 0, per_frame_211= IstZW2 += 1; k = 0; per_frame_212= loop (recsize, per_frame_213= gmegabuf(mindex2+k) = megabuf(n+k); per_frame_214= megabuf (m+k) = gmegabuf(mindex2+k); per_frame_215= k += 1;); per_frame_216= if (!(m==n), megabuf (n+6) = 0;,0); per_frame_217= m += recsize; mindex2 += recsize,0); per_frame_218= n += recsize; per_frame_219=);, (IstZW2 > 0) && (mindex2/recsize < MaxShap2))); //Ende B per_frame_220= per_frame_221= per_frame_222=CopyNow = (reg50 <= 50) && (reg14 <= .003); //### per_frame_223=Zeichnen = if((SysTime >1) && (IstZW ==0) && (IstZw2 == 0),0,1); ///### wird nie null weil SysTime <=1 per_frame_224=Bild += Start; per_frame_225=Bild = 10; per_frame_226=q5 = YCam; per_frame_227=q6 = reg06; //fov per_frame_228=q7 = reg07; //MaxDist per_frame_229=q8 = cos(AngCam); per_frame_230=q9 = sin(AngCam); per_frame_231=q10 = reg10; q11 = reg11; q12 = reg12; q13 = reg13; q14 = reg14; per_frame_232= per_frame_233=q17 = SysTime; per_frame_234=q18 = SysZ; per_frame_235=VisDist = MaxDist * 1.3; per_frame_236=q19 = VisDist; per_frame_237= per_frame_238=q30 = start; per_frame_239=q31 = CopyNow; per_frame_240=start = 0; per_frame_241=q32 = aspecty; per_frame_242=monitor = reg50; per_frame_243= per_frame_244=//-----------------Wave shrubs, wave 3&4 ---------------- per_frame_245=h_shrub = abs(sin(RelZ*15))*hfac ; per_frame_246=x_shrub = if (h_shrub < 0.1,sin(rand(100))/3,x_shrub+0.1*(rand(1)-.5)); per_frame_247=if (h_shrub < 0.1, hfac = 1 + rand(2), 0); per_frame_248=reg20 = x_shrub; per_frame_249=reg21 = h_shrub; per_frame_250=reg22 = abs(sin(time*0.15)); //Hell. Blueten per_frame_251= per_frame_252=//--------------------WEG------------------------------ per_frame_253=WegX = (cos(RelZ*par1+par2))*SysZ*0.2; per_frame_254=x0 = WegX; per_frame_255=z0 = SysZ; per_frame_256=WegY = reg10*z0*(sin(x0*reg11 + z0*reg13)) * sin(z0*reg12+reg13) + pow(x0,2)*reg14; per_frame_257= per_frame_258=q1 = WegX; per_frame_259=q2 = WegY; per_frame_260=q3 = 0.5 + 3 * (1+sin(time*0.072)); //Weg zerklueftet per_frame_261=q4 = 1+0*RelZ; //generelle Helligkeit per_frame_262= per_frame_263= per_frame_264=trelx = time + tstart; per_frame_265=q25 = copyable; per_frame_266=q26 = 0.5 + 0.4*sin(trelx*0.1); //ambient per_frame_267=q27 = 0.35 + 0.3*sin(trelx*0.045); //fog per_frame_268=q28 = 0.5 + 0.4*sin(trelx*0.013); //sky per_frame_269=//q28 = 1; per_frame_270=monitor = q28; per_frame_271= warp_1=`float tim, tsin, tcos, cmax, cmin, cmix, cmcos; warp_2=`float2 quv, quvorig; warp_3=`sampler sampler_fw_rand00, sampler_fc_rand01; warp_4=`shader_body warp_5=`{ warp_6=` // sample previous frame warp_7=`tim=(time/(19+1/mid_att)); warp_8=`tcos=cos(tim); warp_9=`tsin=sin(tim); warp_10=` warp_11=`ret = tex2D( sampler_main, uv ).xyz; warp_12=` warp_13=` // darken (decay) over time warp_14=` ret *= 0.195*(.15+.0155*sin(tim)); //or try: ret -= 0.004; warp_15=` //uvmods warp_16=` quv=float2(max(uv.x*(1-uv.x),(1-uv.x)*uv.x),uv.y), warp_17=` quvorig=float2(max(uv_orig.x*(1-uv_orig.x),(1-uv_orig.x)*uv_orig.x),uv_orig.y), warp_18=` warp_19=`//ret = tex2d(sampler_fc_rand01,lerp(float2(max(uv.x.1-uv.x),uv.y),uv_orig,max(ret,1-ret)-.5)+float2(.5,0)); warp_20=`//ret+=.291*tex2d(sampler_fc_rand01,lerp(float2(max(uv.x*(1-uv.x),(1-uv.x)*uv.x),uv.y),float2(max(uv_orig.x*(1-uv_orig.x),(1-uv_orig.x)*uv_orig.x),uv_orig.y),max(ret,1-ret)-.395-.1*cos(tim))+float2(.5+.1*sin(tim),0)).xyz; warp_21=`ret*=ret; warp_22=`ret+=.86*(.35+.35*cos(tim))*tex2d(sampler_fw_rand00,lerp(float2(quv.x-.6,quv.y),float2(quvorig.x-.6,quvorig.y),max(ret,1-ret)-.395-.1*tcos)+float2(.5+.1*tsin,0)).xyz; warp_23=`cmax=max(.35,max(ret.x,max(ret.y,ret.z))); warp_24=`cmin=max(.004,min(ret.x,min(ret.y,ret.z))); warp_25=`cmix=(cmax-cmin)<=(cmax*.31); warp_26=`cmix*=.5+.5*tsin; warp_27=`cmcos=cmix*tcos; warp_28=`//ret-=max(ret.zzz,ret.yyy)*((ret.x+ret.y+ret.z)/3)>=.9; warp_29=`ret=ret-((max(ret.zzz,ret.yyy)*(1-cmix))*((ret.x+ret.y+ret.z)/3)>=.9)+((cmix*.3)+.291)*tex2d(sampler_fc_rand01,lerp(quv,quvorig,max(ret-cmcos,1-ret)-cmcos)+float2(.5+.1*tsin,0)).xyz; warp_30=` warp_31=` warp_32=`} comp_1=`float2 rs; comp_2=`shader_body comp_3=`{ comp_4=` comp_5=` comp_6=`float2 uv1 = (uv-.5)*aspect.xy; comp_7=` comp_8=`rs.x = ang/3.14 + q28; comp_9=`rs.y = .1/(.05+length (uv1))+time*.5; comp_10=` comp_11=`uv = frac(rs); comp_12=`uv1 = frac(rs); comp_13=`float3 ret1 = tex2D(sampler_main, uv) + GetBlur1(uv); comp_14=` comp_15=`float2 hor = float2 (texsize.z,0); comp_16=`float2 ver = float2 (0,texsize.w); comp_17=`float dx = GetPixel (uv-hor) - GetPixel (uv+hor); comp_18=`float dy = GetPixel (uv-ver) - GetPixel (uv+ver); comp_19=`float2 dz = float2 (dx,dy); comp_20=` comp_21=`uv1 = .3*cos(uv1*16) - 4*dz;; comp_22=`float3 dots = saturate(.04/length(uv1)); comp_23=` comp_24=`ret1 = 4*(1+bass_att)*dots*(.6-ret1); comp_25=` comp_26=`ret = .8*ret1; comp_27=`}