By: Tim Voght tvoght@indy.net Completed: 12/21/94 File Name: TVJACKS2.JPG Programs Used: PovRay 2.2 and my favorite text editor Comments: See my comments for TVJACKS.JPG, which is basically the same scene from a more conventional viewpoint. This is the game of jacks as seen by a passing ant. I like this one a little better, personally. I must admit I'm pretty satisfied with the way the rubber ball texture turned out. ---------------------------TVJACKS2.POV-------------------------------------- #include "colors.inc" #include "shapes.inc" #include "textures.inc" camera { location <12.5, .1, 11.5> direction 10*z up y right x*1.33 look_at <25, .5, 15> } light_source { <15, 30, 15> color White } declare concrete = texture { pigment { marble turbulence 1 color_map { [0.90 color Gray75 ] [0.99 color Gray55 ] [1.00 color Brown ] } } scale <.1,.1,.1> } declare walk_segment = object { union { difference { box { <.125,-3,0>, <29.875,0,30> } box { <.124,-.25,-.1>, <.375,.1,30.1> } box { <29.625,-.25,-.1>, <29.876,.1,30.1> } // these subtracted ellipsoids represent voids left by rocks in concrete sphere { <0,0,0>, 1 scale <.3,.3,.2> rotate y*27 translate <.5,0,17.3> } sphere { <0,0,0>, 1 scale <.4,.2,.5> rotate y*32 translate <29,0,19.9> } sphere { <0,0,0>, 1 scale <.3,.3,.5> rotate y*12 translate <20.7,0,16> } sphere { <0,0,0>, 1 scale <.2,.2,.4> rotate y*7 translate <19.3,0,11> } sphere { <0,0,0>, 1 scale <.15,.2,.3> rotate y*65 translate <22.7,0,11.6> } sphere { <0,0,0>, 1 scale <.1,.1,.3> rotate y*36 translate <23.6,0,12.3> } sphere { <0,0,0>, 1 scale <.3,.3,.4> rotate y*13 translate <.2,0,14.2> } sphere { <0,0,0>, 1 scale <.2,.3,.3> rotate y*0 translate <3.6,0,16.2> } sphere { <0,0,0>, 1 scale <.4,.3,.5> rotate y*69 translate <28.7,0,23.2> } } cylinder { <.375,-.25,0>, <.375,-.25,30>, .25 } cylinder { <29.625,-.25,0>, <29.625,-.25,30>, .25 } } texture { concrete } normal { bumps .8 scale 0.1 } finish { ambient .4 } bounded_by { box { <.124,-3,-.01>, <29.876,0.01,30.01> } } } declare jack = object { union { cone { <0, 0, 0>, .0625 <0, .375, 0>, .015625 } cone { <0, 0, 0>, .0625 <0, -.375, 0>, .015625 } cone { <0, 0, 0>, .0625 < .375, 0, 0>, .015625 } cone { <0, 0, 0>, .0625 <-.375, 0, 0>, .015625 } cone { <0, 0, 0>, .0625 <0, 0, .375>, .015625 } cone { <0, 0, 0>, .0625 <0, 0, -.375>, .015625 } sphere { <-.3125, 0, 0>, .0625 } sphere { < .3125, 0, 0>, .0625 } sphere { <0, 0, -.3125>, .0625 } sphere { <0, 0, .3125>, .0625 } } texture { Silver3 } finish {phong 0.9 phong_size 60 metallic} bounded_by { sphere { <0,0,0>, .3751 } } translate y*.375 // raise to ground level rotate y*45 // place in stable resting position rotate z*51 } declare rubber_ball = object { union { sphere { <0,0,0>, .5 } cylinder { <-.01,0,0>, <.01,0,0>, .515 } // mold line } pigment { color red 1 green 0.2 blue 0.2 } normal {bumps 0.1 scale 0.05} finish {specular 0.7 roughness 0.1 ambient .5 } rotate <0,14,41> // dis-orient mold line translate y*.5 bounded_by { sphere { <0,.5,0>, .515 } } } //--------- The scene // sky sphere { <0,0,0>, 1000 pigment { color SummerSky } } // sidewalk object { walk_segment translate x*0 } object { walk_segment translate x*30 } // scatter jacks around object { jack rotate y*23 translate x*26.5 translate z*14 } object { jack rotate y*138 translate x*24 translate z*18.5 } object { jack rotate y*43 translate x*22 translate z*13.5 } object { jack rotate y*265 translate x*22.2 translate z*17.1} object { jack rotate y*332 translate x*24 translate z*15.6 } object { jack rotate y*49 translate x*25.6 translate z*17.4 } object { jack rotate y*145 translate x*27.4 translate z*15.9 } object { jack rotate y*81 translate x*22.2 translate z*14.1 } object { jack rotate y*290 translate x*23.3 translate z*11.2 } object { jack rotate y*210 translate x*26.6 translate z*13.6 } object { jack rotate y*110 translate x*25.8 translate z*12.2 } object { jack rotate y*0 translate x*27.6 translate z*12.6 } // place the ball object { rubber_ball translate <25,0,15> } -----------------------------------------------------------------------------