//Description: // A rerender of a variation of the Sierpinski recursion // Bird's eye view! //Author: Ben Scheele //Date: 3-06-2003 #declare rad = 1; global_settings{ #if(rad = true) radiosity{ pretrace_start 0.08 pretrace_end .01 count 100 nearest_count 6 error_bound 1.65 recursion_limit 1 low_error_factor 0.65 gray_threshold 0.0 minimum_reuse 0.015 brightness 1 adc_bailout 0.01/2 } ambient_light off #end } camera{ location <0,500,3.5> up y right x look_at 3.5*z angle 4.25 rotate -30*y } sky_sphere{ pigment{ radial frequency 1 triangle_wave color_map { [ 0.0 rgb <.8,.9,1> ] [ 0.5 rgb <.7,.7,1> ] [ 1.0 rgb <.6,.6,.7>] } rotate -90*y } } light_source{ 100*y rgb .75 } light_source{ <0,100,-200> rgb 1 } #macro Recursion (currentlevel,currentradius) sphere{ 0, currentradius pigment{ rgb <.4,.2,.7> } finish{ ambient .4 phong 2 phong_size 80 diffuse .8 metallic .3 specular .3 roughness .1 reflection{ .15 .35 } } } #local n = .5; #if (currentlevel < recursionmax) #declare b = 60*currentradius; union{ Recursion (currentlevel+1,currentradius*n) translate x*currentradius*(1+n) rotate -b*z } union{ Recursion (currentlevel+1,currentradius*n) translate x*currentradius*(1+n) rotate -b*z rotate 120*y } union{ Recursion (currentlevel+1,currentradius*n) translate x*currentradius*(1+n) rotate -b*z rotate -120*y } union{ Recursion (currentlevel+1,currentradius*n) translate y*currentradius*(1+n) } #end #end #declare recursionmax = 7; Recursion (0,7)