// Persistence of Vision Ray Tracer Scene Description File // File: atmosphereicmedia1.pov // Vers: 3.6 // Desc: Atmosphereic Media Demo 1 // Date: 6/29/2005 // Auth: Bryan Valencia #declare FX=true; #declare GunMetal=texture{ pigment{cells color_map{ [0 color rgb .4] [.95 color rgb .2] [1 color rgb .3] } scale <100,2,4> } finish{phong 1 metallic} } #declare DrippyRust=texture{ pigment{wrinkles turbulence 0.75 color_map{ [0 .3 color rgbf 1 color rgbf 1] [.3 1 color rgbf 1 color rgbf <1,.3,.1,.4>] } } scale 2 } #declare Dust=texture{ pigment{ granite turbulence 2 color_map{ [0,0.96 color rgbf 1 color rgbf 1] [0.96,1 color rgbf 1 color rgb 1] } scale 1 } } // the hull difference{ cylinder{<0,0,-100><0,0,100>,10.5} //outer tube union{ cylinder{<0,0,-99><0,0,99>,10}//inner bore cylinder{<0,0, 90><0,0,111>,5}//door #declare B=-3; #while (B<=3) box{} //light slits #declare B=B+1; #end } texture{GunMetal} texture{DrippyRust scale<1,20,1>} texture{Dust} } #ifdef (FX) #declare air= cylinder{<0,0,-110><0,0,110>,20 hollow pigment{color rgbf 1} interior{ media { intervals 10 scattering { 4, rgb 0.0005 } samples 1, 10 confidence 0.9 //was 0.9999 variance 1/1000 ratio 0.9 } } } object{air} #end camera{location<-2,-3,-10> look_at<0,-5,0>} #declare CrankTex=texture{ pigment{color red 1} finish{phong 1 metallic} } union{ cylinder{<0,0,-1><0,0,1>,5} //door union{ torus{2,0.3 rotate x*90} sphere{0,0.5} cylinder{<0,0,0>,<0,2,0>,.2} cylinder{<0,0,0>,<2,0,0>,.2} cylinder{<0,0,0>,<0,-2,0>,.2} cylinder{<0,0,0>,<-2,0,0>,.2} texture{CrankTex} rotate z*32 translate z*-1.2 } translate x*-5 rotate y*25 translate x*5 translate z*100 texture{GunMetal} texture{DrippyRust scale<1,20,1>} } //pipes union{ cylinder{<9.6,0,-100><9.6,0,100>,.4 rotate z*15} cylinder{<9.6,0,-100><9.6,0,100>,.4 rotate z*20} texture{ pigment{gradient z color_map{ [0,.7 color rgb <1,1,0> color rgb <1,1,0>] [.7,1 color rgb 0 color rgb 0] } rotate <45,45,0> } } texture{DrippyRust scale<1,20,1>} } union{ cylinder{<-10,0,-100><-10,0,100>,.3 rotate z*15} cylinder{<-10,0,-100><-10,0,100>,.3 rotate z*20} cylinder{<-10,0,-100><-10,0,100>,.3 rotate z*25} texture{ pigment{color rgb 1} } texture{DrippyRust scale<1,20,1>} } //light fixtures on the sides #declare fixture1=union{ sphere{0,.4 no_shadow pigment{color rgb 3}} light_source{<0,0,0> color rgb .7 //media_interaction off fade_distance 3 fade_power 2 } } /* #declare A=-80; #while (A<80) object{fixture1 translate <9.9,0,A>} object{fixture1 rotate y*180 translate <-9.9,0,A>} #declare A=A+20; #end */ //walkway union{ cylinder{<-5,-8,-100>,<-5,-8,100>,.1} cylinder{< 5,-8,-100>,< 5,-8,100>,.1} texture{ pigment{color rgb<1,.5,.45>} finish{reflection .5 metallic} } } box{<-5,-15,-100><5,-8,100> texture{ pigment{color rgb .2} finish{phong 1 metallic} normal{wrinkles .1 turbulence 1} } texture{DrippyRust scale<1,20,1>} texture{Dust} } //pillars union{ #declare A=-90; #while (A<90) cylinder{<-6,-10,A><-6,10,A>,.5} cylinder{< 6,-10,A>< 6,10,A>,.5} box{<-10,8,A-.5><10,10.1,A+.5>} #declare A=A+20; #end texture{GunMetal} texture{DrippyRust scale<1,20,1>} } light_source{ <-100,500,1000> color rgb <.5,.5,1>*2 parallel point_at <0, 0, 0> } /*RADIOSITY*/ #include "rad_def.inc" global_settings { assumed_gamma 0.8 #ifdef (FX) ambient_light rgb .05 radiosity{ Rad_Settings(Radiosity_IndoorLQ, off, on) } #else ambient_light rgb .7 #end max_trace_level 25 } // Create an infinite sphere around scene and allow any pigment on it sky_sphere { pigment{gradient y color_map{ [0 color rgb .2] [.52 color rgb .1] [.65 color rgb<.5,.5,1>] [1 color rgb<0,0,1>] } scale 2 translate y*-1 } }