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

  1. // Persistence Of Vision raytracer version 1.0 sample file.
  2.  
  3. // By Dan Farmer
  4. // This is a complete rewrite of a scene file that I did a couple of years
  5. // ago.  The original was a real mess... used intersections to do the
  6. // stripes on the balls and had the table and balls set up on the X/Y plane,
  7. // and rotated it on the x-axis to put it horizontal!  This time I did it
  8. // right... used gradients for the stripes and designed things where I wanted
  9. // them in the end.  Much faster with the gradients!
  10. // Added a spotlight, too... new feature in POV-Ray 1.0.
  11.  
  12. #include "shapes.inc"
  13. #include "colors.inc"
  14. #include "textures.inc"
  15.  
  16. // Special re-write of "Shiny" declaration.  Will override textures.inc.
  17. #declare ShinyMK2 = texture {
  18.    phong 1 phong_size 200
  19.    reflection 0.25
  20.    ambient 0.15
  21.    diffuse 0.75
  22. }
  23. #include "poolball.inc"
  24.  
  25. /* ***************** set up the view & light sources **************************/
  26.  
  27. camera {
  28.    location <0.0  6.0  -15.0>
  29.    direction <0.0 0.0  1.5>
  30.    up  <0.0  1.0  0.0>
  31.    right <1.33333 0.0 0.0>
  32.    look_at <0 -1 0>
  33. }
  34.  
  35. /* Overhead spotlight */
  36. object {
  37.    light_source { <0.0  200.0  -3.0>
  38.       color White
  39.       spotlight
  40.       point_at <0 1 3>
  41.       tightness 800
  42.       radius 8
  43.       falloff 25
  44.    }
  45. }
  46.  
  47. /* ************************** set up the table ********************************/
  48.  
  49. object {     /* Felt table top */
  50.    plane { <0 1 0 > -1 }
  51.    texture {
  52.       ambient 0.2
  53.       diffuse 0.8
  54.       color MediumForestGreen
  55.    }
  56.    color MediumForestGreen
  57. }
  58.  
  59. /* Cue stick */
  60. object { CueStick
  61.    scale     < 0.15 0.15 1.0 >         /* Skinny and long */
  62.    translate < 0.0  0.0 -7.5 >
  63. }
  64.  
  65. /* Cue Ball */
  66. object {
  67.    sphere { Ball }
  68.    translate < 0.0  0.0 -6.0 >
  69.    texture {
  70.       ShinyMK2
  71.       color White
  72.       ambient 0.25
  73.    }
  74.    color White
  75. }
  76.  
  77. /* **************************** set up the balls ********************************/
  78. // (The rotations here are just random values to rotate the stripes)
  79.  
  80. /* Row #1 */
  81. object { _1_Ball
  82. }
  83.  
  84. /* Row #2 */
  85. object { _3_Ball
  86.    translate <1.0  0.0  1.732 >}
  87.  
  88. object { _10_Ball  rotate < 0.0  0.0  -80.0 >
  89.    translate <-1.0  0.0 1.732 >}
  90.  
  91.  
  92. /* Row #3 */
  93. object { _11_Ball  rotate < 45.0  -35.0  -12.0 >
  94.    translate <2.0  0.0  3.464 >}
  95.  
  96. object { _8_Ball
  97.    translate < 0.0  0.0  3.464 >}
  98.  
  99. object { _5_Ball
  100.    translate <-2.0  0.0  3.464 >}
  101.  
  102.  
  103. /* Row #4 */
  104. object { _2_Ball
  105.    translate <-3.0  0.0  5.196 >}
  106.  
  107. object { _7_Ball
  108.    translate <-1.0  0.0  5.196 >}
  109.  
  110. object { _4_Ball
  111.    translate < 1.0  0.0  5.196 >}
  112.  
  113. object { _14_Ball  rotate < 0.0  -15.0  -2.0 >
  114.    translate < 3.0  0.0  5.196 >}
  115.  
  116.  
  117. /* Row #5 */
  118. object { _15_Ball
  119.    translate <-4.0  0.0  6.928 >}
  120.  
  121. object { _13_Ball  rotate < -5.0  11.0  -1.0 >
  122.    translate <-2.0  0.0  6.928 >}
  123.  
  124. object { _9_Ball  rotate < -80.0  -13.0  29.0 >
  125.    translate < 0.0  0.0  6.928 >}
  126.  
  127. object { _12_Ball  rotate < 15.0  15.0  -2.0 >
  128.    translate < 2.0 0.0  6.928 > }
  129.  
  130. object { _6_Ball
  131.    translate < 4.0  0.0  6.928 >}
  132.