#version unofficial MegaPov 0.5; // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- /* Title: Author: Chris S. Date: Comments: Requires allfiles.inc which is basically colors.inc and a few other include files pooled into one for easy usage. */ // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #ifndef (Raytrace) // Generates environment when this file is not being included #local Raytrace = 1; #else #local Raytrace = 0; #end // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #include "allfiles.inc" // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #declare RandS=seed(45); #macro rand_ext(M,D,Seed) (M+(rand(Seed)-.5)*2*D) #end // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #declare RockTex02= texture{ pigment{ bozo turbulence 1 color_map{ [0 rgb<.14,.28,.17>] [.25 rgb<.027,.153,.055>] [.6 rgb<.016,.239,.216>] [.9 rgb .25]//<.75,.41,.41>] } scale .1 } finish{diffuse 1 roughness 1} normal{bumps,1 turbulence 1 scale .01} } #declare RockTex03= texture{ pigment{color Red} } // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #declare Rock02= union{ //difference{ sphere{<0,0,0>,1} //box{<5,5,-5><0,0,5>} texture{RockTex02} scale<1.25,1.5,1> } object{Rock02} object{Rock02 rotate 45*z translate<2,-1,-.25>} object{Rock02 rotate -60*z translate<-2,-1.5,-.25>} fog{ fog_type 1 // 1=constant, 2=ground_fog distance 2.5 color <0,.25,.27>*.6//blue .5//<0,.349,.349>//<.027,.255,322>// turbulence .5 turb_depth 1 } // ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- #if(Raytrace=1) global_settings { ambient_light .15 max_intersections 64 max_trace_level 100000 } background{color rgb<0,.25,.27>*.6}//<1,0,0>}// //plane{y, -1000 texture{pigment{color rgb<0,.25,.27>*.6}}} light_source{ <0,0,0> color rgb <1,1,1>*2.25 area_light <5,0,0>,<0,5,0>,4,4 adaptive 0 jitter circular //rotate <-45,0,45> translate <20,100,200> } /* light_source{<20, 200, 200> color rgb <1, 1, 1>*.5 media_interaction on} light_source{<20, 200, 200> color rgb <1, 1, 1>*.75 media_interaction off} light_source{<-100, 8, 200> color rgb <1, 1, 1>} */ #declare A=57;//97;// camera{ //orthographic location <0, 2.5, .5>//<0, 0, 2.5>// sky z direction z right x*A up (image_height/image_width)*A*z angle A look_at <0, 0, .5> } #declare FishTex01= texture{ pigment{ image_map{ png"fishpic_01.png"//gif"fishpic_01.gif"//tga"fishpic_01.tga"// the file to read (iff/gif/tga/png/sys) map_type 0 // 0=planar, 1=spherical, 2=cylindrical, 5=torus interpolate 0 // 0=none, 1=linear, 2=bilinear, 4=normalized distance // [filter N V] // N=all or color index # (0...N), V= value (0.0...1.0) //transmit 0 1 // [use_color | use_index] once } translate<-.5,-.5,0> rotate 180*z scale 2 //scale<2,.75,.001> } finish{ambient 5.5 reflection 0 diffuse 0} //normal{bumps,.5 turbulence .5 scale .5} } //box{<-1,-1,-.000001>,<1,1,.000001> texture{FishTex01} scale<2,.75,.001> scale .05 rotate -90*x}// translate .5*z}// #declare Fish01=union{ triangle{ <1,-1,0> // <-1,-1,0> // <-1,1,0> // } triangle{ <1,-1,0> // <1,1,0> // <-1,1,0> // } } union{ #$ R=.025;// radius of sphere #$ R3=3;// amount of randomness #$ Rand01=seed(747); #$ A1=5;// length of area #$ L1=35;// number of spheres along length #$ N1=A1/L1; #$ T1=A1/2; #while(0, <0,0,-1>); #if(TR1.x!=0 & TR1.y!=0) object{Fish01 texture{FishTex01} scale<2,.75,.001> scale .025 rotate -90*x scale 1+S1 translate TR1+<0,0,.21+RT3>} //box{<-1,-1,-.000001>,<1,1,.000001> hollow texture{FishTex01} scale<2,.75,.001> scale .025 rotate -90*x scale 1+S1 translate TR1+<0,0,.21+RT3>} //box{<-1,-1,-.05>,<1,1,.05> texture{FishTex01} scale .1 scale .5 scale<1,1,1> rotate -90*x scale 1+S1 translate TR1+<0,0,.25+RT3-.1>} //object{Fish01 scale .1 scale 1+S1 translate TR1+<0,0,.25+RT3-.1>} //sphere{0,R pigment{color Yellow} scale<2,1,1> scale 1+S1 translate TR1+<0,0,.25+RT3-.1>} #end #$ A2=A2-N2; #end #$ A1=A1-N1; #end } #end