// "Chateau" // 1998 Anders Sandberg #include "colors.inc" #include "textures.inc" #include "stones1.inc" camera { location <0,-3,-8> up <0,1,0> right <0.6666,0,0> look_at <0, -.5, 0> } object { light_source { <-500, 500, -500> color White } } #declare TX=0 #while(TX<1) #declare TY=0 #while (TY<1) #declare X=<0,0,0> #declare Xold=<0,0,0> //#declare A=seed(1236+TX+10*TY) #declare A=seed(1636+TX+10*TY) #declare V1= #declare V2= #declare V3= #declare A1=rand(A)*360 #declare A2=rand(A)*360 #declare A3=rand(A)*360 #declare S1=rand(A) #declare S2=rand(A) #declare S3=rand(A) //,rand(A),rand(A)> #declare T1= #declare T2= #declare T3= #declare N=0 #while (N<30000) #if (N>10) sphere{X,0.025 translate 2*(TX*x+TY*z)-x rotate <0,0,-90> translate <0,0.5,0> texture{T_Grnt9 scale .1 normal {granite}}} #end #declare Xold=X #declare B=rand(A)*3 #if (B<0.5) //#declare X=vaxis_rotate(X,<1,2,3>,34)*0.7+<0.4,0.1,-.4> //#else ///#declare X=vaxis_rotate(X,<-1,1,1>,134)*0.6+<-0.4,0.5,0> #declare X=vaxis_rotate(X,<0,1,1>,90)*0.5+<0,-.7,0> #else #declare X=vaxis_rotate(X,<1,0,0>,150)*0.85+<0.6,0,0> /* #declare X=vaxis_rotate(X,V1,A1)*S1+T1 #else #if (B<20) #declare X=vaxis_rotate(X,V2,A2)*S2+T2 #else #declare X=vaxis_rotate(X,V3,A3)*S3+T3 #end */ #end #declare N=N+1 #end #declare TY=TY+1 #end #declare TX=TX+1 #end plane {<0,1,0>,-5 texture { pigment{ granite color_map { [0 color White] [ 0.25 color White] [0.35 color rgb <0.137255, 0.556863, 0.419608> ] [1.0 color rgb <0.137255, 0.556863, 0.419608>] } } normal { ripples 0.75 frequency 10 } finish { reflection 0.3 refraction 0.5 ior 1.33 } translate <0,0,1000> } } /* plane { y, 500 texture { pigment { SkyBlue } finish { ambient 1 diffuse 0} } texture { pigment { bozo turbulence.5 color_map { [0 White] [1 White filter 1] } } finish { ambient 1 diffuse 0 } scale <1000, 250, 250> rotate <5, 45, 0> } } */ sky_sphere { pigment { gradient y color_map { [0 White] [0.3 LightBlue] [1.0 color rgb <0.6,0.8,1.0>] } scale 2 translate -1 } } background{SkyBlue} fog { fog_type 2 distance 10 colour White turbulence 0.5 fog_offset -30 fog_alt 1 }