home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / graphics / ftpovscn / 2 / stonewal.pov < prev    next >
Text File  |  1994-07-28  |  3KB  |  146 lines

  1. // Persistence Of Vision raytracer version 1.0 sample file.
  2.  
  3. // By Dan Farmer
  4. //    Minneapolis, mn
  5. /*
  6.       a pastoral scene with a granite stone fence.  This was never really
  7.       "finished", but it works as it is.  Plenty of material to play around
  8.       with here.  The basic building blocks are here... just use your
  9.       imagination.
  10. */ 
  11. #include "shapes.inc"
  12. #include "colors.inc"
  13. #include "textures.inc"
  14.  
  15. camera {
  16.    location <50.0  40.0  -350.0>
  17.    look_at <-100.0 0.0 0.0>
  18.    direction <0.0 0.0 2.0>
  19.    up         <0.0 1.0 0.0>
  20.    right < 1.3333 0.0 0.0 >
  21. }
  22.  
  23. /* Add light source */
  24. object {
  25.    light_source { <100.0  200.0  -630.0>
  26.       color White
  27.    }
  28. }
  29.  
  30. object {
  31.    light_source { <50.0  20000.0 50.0>
  32.       color White
  33.    }
  34. }
  35.  
  36. /* Add the sky to the picture */
  37. object {
  38.    sphere { <0.0 0.0 0.0> 1000000.0 }
  39.    texture {
  40.       color SkyBlue
  41.       diffuse 0
  42.       ambient 1
  43.    }
  44.    color SkyBlue
  45. }
  46.  
  47. /* Grassy meadow */
  48. object {
  49.    plane { <0.0 1.0 0.0> -2.0 }
  50.    texture {
  51.       0.05  /* This value dithers the colors */
  52.       color red 0.2 green 1.0 blue 0.4
  53.       waves 1.0
  54.       frequency 2000.0
  55.       scale <50000.0 50000.0 50000.0>
  56.       ambient 0.1
  57.       diffuse 0.3
  58.    }
  59.    color red 0.2 green 1.0 blue 0.4
  60. }
  61.  
  62. #declare Wall_Segment = object {
  63.    intersection { Cube }
  64.    scale <8.0 50.0 100.0>
  65.    texture {
  66.       0.05
  67.       granite
  68.       ambient 0.2
  69.       diffuse 0.8
  70.       brilliance 7.0
  71.       reflection 0.1
  72.       phong 1.0
  73.       phong_size 60
  74.    }
  75.    color White
  76. }
  77.  
  78. #declare Granite_Ball = object {
  79.    sphere { <0.0 0.0 10.0> 10.0 }
  80.    texture {
  81.       0.05
  82.       granite
  83.       ambient 0.2
  84.       diffuse 0.8
  85.       brilliance 7.0
  86.       reflection 0.1
  87.       phong 1.0
  88.       phong_size 60
  89.    }
  90.    color White
  91. }
  92.  
  93. #declare Column = object {
  94.    intersection { Cube }
  95.    scale <12.0 60.0 12.0>
  96.    texture {
  97.       0.05
  98.       granite
  99.       ambient 0.2
  100.       diffuse 0.8
  101.       brilliance 7.0
  102.       reflection 0.1
  103.       phong 1.0
  104.       phong_size 60
  105.    }
  106.    color White
  107. }
  108.  
  109. /* note: Granite column is 12 wide x 12 deep x 60 high
  110.         Granite ball has a radius of 20 */
  111. #declare Pillar = composite {
  112.    object { Column       translate <0.0  0.0 0.0> }
  113.    object { Granite_Ball translate <0.0 70.0 0.0> }
  114. }
  115.  
  116. /* Note: Wall segments are 100 units long, Pillars are 12 units "long" */
  117. composite {
  118.    Pillar
  119.    translate <0.0 0.0 -106.0 >
  120. }
  121. object {
  122.    Wall_Segment
  123.    translate <-2.0 0.0 -6.0 >
  124. }
  125. composite {
  126.    Pillar
  127.    translate <0.0 0.0 0.0 >
  128. }
  129. object {
  130.    Wall_Segment
  131.    translate <-2.0 0.0 112.0 >
  132. }
  133. composite {
  134.    Pillar
  135.    translate <0.0 0.0 112.0 >
  136. }
  137. object {
  138.    Wall_Segment
  139.    rotate <0.0 -90.0 0.0>
  140.    translate <76.0 0.0 114.0 >
  141. }
  142. composite {
  143.    Pillar
  144.    translate <176.0 0.0 112.0 >
  145. }
  146.