#version 3.5; #include "colors.inc" #include "Windows.inc" #include "woods.inc" #declare Radiosity=on; #declare RadiositySuper=off; #declare AreaLight=on; global_settings { assumed_gamma 1.0 //max_trace_level 25 #if (Radiosity) radiosity { pretrace_start 0.08 // start pretrace at this size pretrace_end 0.04 // end pretrace at this size count 35 // higher -> higher quality (1..1600) [35] nearest_count 5 // higher -> higher quality (1..10) [5] error_bound 1.8 // higher -> smoother, less accurate [1.8] recursion_limit 2 // how much interreflections are calculated (1..5+) [3] low_error_factor .6 // reduce error_bound during last pretrace step [0.5] gray_threshold 0.4 // increase for weakening colors (0..1) [0] minimum_reuse 0.015 // reuse of old radiosity samples [0.015] brightness 2.0 // brightness of radiosity effects (0..1) [1] adc_bailout 0.01/2 //normal on // take surface normals into account [off] //media on // take media into account [off] //save_file "file_name" // save radiosity data //load_file "file_name" // load saved radiosity data //always_sample off // turn sampling in final trace off [on] //max_sample 1.0 // maximum brightness of samples } #end #if (RadiositySuper) radiosity { pretrace_start 0.08 // start pretrace at this size pretrace_end 0.04 // end pretrace at this size count 1000 // higher -> higher quality (1..1600) [35] nearest_count 10 // higher -> higher quality (1..10) [5] error_bound 0.3 // higher -> smoother, less accurate [1.8] recursion_limit 3 // how much interreflections are calculated (1..5+) [3] low_error_factor .6 // reduce error_bound during last pretrace step [0.5] gray_threshold 0.4 // increase for weakening colors (0..1) [0] minimum_reuse 0.006 // reuse of old radiosity samples [0.015] brightness 2.0 // brightness of radiosity effects (0..1) [1] adc_bailout 0.01/2 //normal on // take surface normals into account [off] //media on // take media into account [off] //save_file "file_name" // save radiosity data //load_file "file_name" // load saved radiosity data //always_sample off // turn sampling in final trace off [on] //max_sample 1.0 // maximum brightness of samples } #end } #default { texture { pigment {rgb <1, 1, 1>} //pigment {rgb 1} #if (Radiosity) finish { ambient 0.0 diffuse 0.6 specular 0.0 } #else finish { ambient 0.05 diffuse 0.6 //specular 0.3 } #end } } //camera { location <0, 3, -17> look_at 6*y } //camera { location <-20, 8, -2> look_at 0} //camera { location < 0, 5.5, 0> look_at <6, 6, 20>} camera { location <0, 6, 24> look_at <6, 5.5, 38>} #declare Light= union { box { <-0.5,-.2,-1><0.5,.2,1> no_shadow pigment { rgb 1.8 } finish { ambient 2.0 } } box { <-0.5, -.2, -1.1><0.5,.2,-1 > pigment {color Black}} box { <-0.5, -.2, 1 ><0.5,.2, 1.1> pigment {color Black}} light_source { 0, .5 #if (AreaLight) area_light x*2,z*2,10,10 adaptive 0 jitter #end } } //object { Light rotate z*-45 translate <9,9,37> } //object { Light rotate -90*z translate <8.6,9,32> } //object { Light rotate z*-45 translate <9,9,19> } //object { Light rotate z*-45 translate <9,9,0> } //object { Light rotate z*-45 translate <9,9,-19> } /* // The sun light_source { <0, 0, 0> color White #if (AreaLight) area_light <0, 30, 0>, <0, 0, 30>, 8, 8 adaptive 2 jitter #end translate <-1000, 0, 0> rotate <0, 0, -40> // rotate around the origin to keep the normal rotate <0, 25, 0> // of the area light pointing to 0,0,0 } */ /* // Create an infinite sphere around scene and allow any pigment on it sky_sphere { pigment { gradient y color_map { [0.0 color rgb <0.7,0.7,1.0>] [1.0 color blue 0.5] } } } */ #declare ww = -6; // west wall [outside] (x) #declare ew = 10; // east wall [outside] (x) #declare nw = 40; // north wall [outside] (z) #declare sw = -20; // south wall [outside] (z) #declare wt = 1; // wall thickness [outside - inside] #declare fh = 0; // floor height [inside] (y) #declare ch = 9; // ceiling height [inside] (y) // floor box { <-6, -1, -20>, <10, 0.1, 40>} // ceiling //box { <-6, 10, -20>, <10, 11, 40> } // north wall //box { <-6, -0.5, 39>, <10, 10.5, 40>} box { <-6, -0.5, 39>, <30, 25.5, 40>} // east wall box { <9, -0.5, -20>, <10, 10.5, 40>} // south wall box { <-6, -0.5, -20>, <10, 10.5, -19>} // west wall north end box { <-6, -0.5, 30>, <-5, 10.5, 40.5>} // west wall south end box { <-6, -0.5, -20>, <-5, 10.5, -10>} // west wall footer box { <-6, -0.5, -20.5>, <-5, 1, 40.5>} // west wall header box { <-6, 9, -20.5>, <-5, 10.5, 40.5>} /* box { <-5.5, -0.5, -19.5>, <9.5, 10.5, 39.5> hollow pigment {rgbt <1,1,1,1>} finish {ambient 0 diffuse 0} interior { media { // atmospheric media sample intervals 10 scattering { 2, rgb 0.03 } samples 1, 10 confidence 0.9999 variance 1/1000 ratio 0.9 } } }*/ // window bars // vertical box { <-6, -0.5, -10>, <-5.5, 10.5, -9.8> pigment {rgb .4}} // wider box { <-6, -0.5, -8>, <-5.75, 10.5, -7.8> pigment {rgb .4}} box { <-6, -0.5, -6>, <-5.75, 10.5, -5.8> pigment {rgb .4}} box { <-6, -0.5, -4>, <-5.75, 10.5, -3.8> pigment {rgb .4}} box { <-6, -0.5, -2>, <-5.75, 10.5, -1.8> pigment {rgb .4}} box { <-6, -0.5, 0>, <-5.75, 10.5, 0.2> pigment {rgb .4}} box { <-6, -0.5, 2>, <-5.75, 10.5, 2.2> pigment {rgb .4}} box { <-6, -0.5, 4>, <-5.75, 10.5, 4.2> pigment {rgb .4}} box { <-6, -0.5, 6>, <-5.75, 10.5, 6.2> pigment {rgb .4}} box { <-6, -0.5, 8>, <-5.75, 10.5, 8.2> pigment {rgb .4}} box { <-6, -0.5, 10>, <-5.75, 10.5, 10.2> pigment {rgb .4}} box { <-6, -0.5, 12>, <-5.75, 10.5, 12.2> pigment {rgb .4}} box { <-6, -0.5, 14>, <-5.75, 10.5, 14.2> pigment {rgb .4}} box { <-6, -0.5, 16>, <-5.75, 10.5, 16.2> pigment {rgb .4}} box { <-6, -0.5, 18>, <-5.75, 10.5, 18.2> pigment {rgb .4}} box { <-6, -0.5, 20>, <-5.75, 10.5, 20.2> pigment {rgb .4}} box { <-6, -0.5, 22>, <-5.75, 10.5, 22.2> pigment {rgb .4}} box { <-6, -0.5, 24>, <-5.75, 10.5, 24.2> pigment {rgb .4}} box { <-6, -0.5, 26>, <-5.75, 10.5, 26.2> pigment {rgb .4}} box { <-6, -0.5, 28>, <-5.75, 10.5, 28.2> pigment {rgb .4}} box { <-6, -0.5, 28>, <-5.75, 10.5, 28.2> pigment {rgb .4}} box { <-6, -0.5, 29.2>, <-5.5, 10.5, 30.1> pigment {rgb .4}} // wider //horizontal box { <-6, 1, -10.5>, <-5.5, 1.2, 30.5> pigment {rgb .4}} // wider box { <-6, 3, -10.5>, <-5.85, 3.2, 30.5> pigment {rgb .4}} box { <-6, 5, -10.5>, <-5.85, 5.2, 30.5> pigment {rgb .4}} box { <-6, 7, -10.5>, <-5.85, 7.2, 30.5> pigment {rgb .4}} box { <-6, 8.8, -10.5>, <-5.5, 9, 30.5> pigment {rgb .4}} // wider // window /* box { <-5.9, 0.5, -10.5>, <-5.8, 9.5, 30.5> texture{ pigment { rgbt <1,1,1,0.97>} finish { // reflection 0.09 } } }*/ /* sphere { <1, 3, 0> 3 texture { finish { reflection .3 specular 0.9 roughness 0.02 } //normal { //bumps .8 //} pigment { rgb <1,0,0> } } } */ // roof // build roof at <0,0,0> to <20, 0, 62> union { // roof surface difference { box {<0, 1, 0> , <30, 2, 62> } union { //skylights box {<5, 0.5, 14>, <12, 1.5, 16> } box {<5, 0.5, 24>, <12, 1.5, 26> } box {<5, 0.5, 34>, <12, 1.5, 36> } box {<5, 0.5, 44>, <12, 1.5, 46> } box {<5, 0.5, 54>, <12, 1.5, 56> } } } //rafters //intersection { union { //box {<0, 0, 0>, <30, 1.05, 0.5>} box {<0, 0, 10>, <30, 1.05, 10.5>} box {<0, 0, 20>, <30, 1.05, 20.5>} box {<0, 0, 30>, <30, 1.05, 30.5>} box {<0, 0, 40>, <30, 1.05, 40.5>} box {<0, 0, 50>, <30, 1.05, 50.5>} //box {<0, 0, 60>, <30, 1.05, 60.5>} texture {T_Wood1 rotate <4,30,80> scale<2,2,2>} } //box { <-6.5, 0, -22>, <10, 40, 50> } //} rotate <0, 0, 30> translate <-7, 8.5, -21> bounded_by { box { <-6.5, 0, -22>, <10, 40, 50> } } } object {SpiralStaircase scale -x rotate < 0, -90, 0> translate <5.9, 0, 35.9> } box {<5.8, 9.8, 36>, <9.5, 10.5, 40>}