global_settings { max_trace_level 50 assumed_gamma 1 ambient_light 1 noise_generator 3 #if(1) radiosity { pretrace_start 16/image_width pretrace_end 2/image_width count 1600 nearest_count 15 error_bound 0.1 recursion_limit 2 low_error_factor .02 gray_threshold 0.0 minimum_reuse 0.001 brightness 1 adc_bailout 0.01/30 max_sample 30 normal on } #end } #macro vpow(_V,_P) #end #declare BC = <4/7,5.5/7,1>; sky_sphere { pigment { planar colour_map {[0 rgb 0.3*vpow(BC,4)][1 rgb 0.7*BC]} } } #declare lightDir = vrotate(vnormalize(<1.5,10,-3>), 0); #declare lightLen = 10000; #declare lightRad = lightLen*2*sin(radians(0.25)); #declare camPos = <75.0, 60.0, -150>; #declare camLookAt = <0.0,70.0,0.0>; #declare camAngle = 75; camera { ultra_wide_angle up y right x*image_width/image_height location camPos direction z angle camAngle look_at camLookAt } // sunlight light_source { 0*x colour rgb (1-0.2*vpow(BC,4)) translate lightDir*lightLen } // ground plane {y, -10 pigment { granite colour_map {[0.2 rgb <1,1,0>*0.2][0.5 rgb <0.3,1,0.3>*0.4]} } } // room difference { box { -<170,20,220>,<170,220,220> } box { -<150, 0,200>,<150,200,200> } box { <-140,80,190>,<140,190,230> } pigment { rgb <.7,.9,1> } finish { ambient 0 diffuse 0.6 } } #declare Chair = union { superellipsoid { <0.2,0.2> scale <20,10,30> rotate <0,0,10> translate 30*y } superellipsoid { <0.2,0.2> scale <30,10,30> rotate <0,0,-70> translate <-35,50,0> } superellipsoid { <0.2,0.2> scale <25,20,10> translate <-5,20,35> } superellipsoid { <0.2,0.2> scale <25,20,10> translate <-5,20,-35> } pigment { rgb <1,1,.7> } finish { ambient 0 diffuse 0.6 } } // furniture object { Chair rotate 6*y translate <-90,0,50> } object { Chair rotate -7*y translate <-92,0,-48> } // strip lights box { -<6,5,50>,<6,5,50> pigment { rgb 1 } finish { ambient 20 diffuse 0 } translate <-100,200,0> } box { -<6,5,50>,<6,5,50> pigment { rgb 1 } finish { ambient 20 diffuse 0 } translate <100,200,0> }