home *** CD-ROM | disk | FTP | other *** search
/ ANews 3 / AnewsCD3.iso / atari / GRAPHX / POV / 68030.060 / POV31G30 / POVRAY_3.1G / SCENES / ADVANCED / NTREAL / NTREAL.POV < prev   
Text File  |  1999-10-30  |  6KB  |  281 lines

  1. // Persistence Of Vision raytracer version 3.1 sample file.
  2. // File by Drew Wells
  3. // Title-"Not a Trace of Reality"
  4. // Compuserve Hall Of Fame award winner
  5. // This one is hard to describe and easy to look at. Have fun with it!
  6.  
  7.  
  8. global_settings { assumed_gamma 2.2 }
  9.  
  10. #include "shapes.inc"
  11. #include "colors.inc"
  12. #include "textures.inc"
  13.  
  14. #declare It =  sphere { <0, 0, 0>, 1 scale <4.0, 0.3, 0.3> }
  15.  
  16. /* Camera/Viewer */
  17.  
  18. // This camera is different from any of the other sample scene files
  19. // The camera is looking in the negative Z direction
  20. // and right is in the negative X direction.
  21. camera {
  22.    direction <0.0, 0.0,  1.5>
  23.    up  <0.0,  1.0,  0.0>
  24.    right <-4/3, 0.0, 0.0>
  25.    translate < -15.0,  5.0,  120.0>
  26.    look_at <10.0, 12.0, 55.0>
  27. }
  28.  
  29. #declare Purple_Clouds = pigment {
  30.    bozo
  31.    turbulence 0.6
  32.    colour_map {
  33.       [0.0 0.5   colour red 0.9 green 0.5  blue 0.6
  34.                  colour red 0.4 green 0.0  blue 0.4]  
  35.       [0.5 0.6   colour red 1.0 green 1.0  blue 1.0 filter 1.0
  36.                  colour red 1.0 green 1.0  blue 1.0 filter 1.0 ]
  37.       [0.6 1.001 colour red 1.0 green 1.0  blue 1.0 filter 1.0
  38.                  colour red 1.0 green 1.0  blue 1.0 filter 1.0]
  39.    }
  40. }
  41.  
  42. #declare Sunset_Sky = pigment {
  43.    gradient y
  44.  
  45.    colour_map {   
  46.       [0.0 0.4   colour red 0.8 green 0.0 blue 0.0
  47.                  colour red 0.4 green 0.0 blue 0.4]
  48.       [0.4 0.6   colour red 0.4 green 0.0 blue 0.4
  49.                  colour red 0.0 green 0.0 blue 0.2]
  50.       [0.6 1.001 colour red 0.0 green 0.0 blue 0.2
  51.                  colour red 0.0 green 0.0 blue 0.0]
  52.    }
  53.    scale 700.0
  54. }
  55.  
  56. #declare Twister = union {
  57.    #include "ntreal.inc"
  58.  
  59.    pigment {
  60.       White_Wood
  61.       scale 3.0
  62.    }
  63.    finish {
  64.       crand 0.05
  65.       ambient 0.1
  66.       diffuse 0.99
  67.    }
  68. }
  69.  
  70. #declare Slice = sphere {
  71.    <0, 0, 0>, 1
  72.    translate <0.0, 0.0, 3.0>
  73.    scale <0.25, 1.00, 0.25>
  74. }
  75.  
  76. #declare Thing = union {
  77.    object { Slice }
  78.    object { Slice rotate -20.0*y }
  79.    object { Slice rotate -40.0*y }
  80.    object { Slice rotate -60.0*y }
  81.    object { Slice rotate -80.0*y }
  82.    object { Slice rotate -100.0*y }
  83.    object { Slice rotate -120.0*y }
  84.    object { Slice rotate -140.0*y }
  85.    object { Slice rotate -160.0*y }
  86.    object { Slice rotate  180.0*y }
  87.    object { Slice rotate -200.0*y }
  88.    object { Slice rotate -220.0*y }
  89.    object { Slice rotate -240.0*y }
  90.    object { Slice rotate -260.0*y }
  91.    object { Slice rotate -280.0*y }
  92.    object { Slice rotate -300.0*y }
  93.    object { Slice rotate -320.0*y }
  94.    object { Slice rotate -340.0*y }
  95.  
  96.    pigment { color red 0.8 green 0.22 blue 0.1 }
  97.    normal {
  98.       bumps 0.3
  99.       scale 0.1
  100.    }
  101.    finish {
  102.       ambient 0.1
  103.       diffuse 0.9
  104.       phong 0.75
  105.       phong_size 30.0
  106.    }
  107. }    
  108.  
  109. #declare Slice2 = sphere { <0.0, 0.0, 0.5>, 0.1 }
  110.  
  111. #declare Thing2 = union {
  112.    object { Slice2 }
  113.    object { Slice2 rotate -20.0*y }
  114.    object { Slice2 rotate -40.0*y }
  115.    object { Slice2 rotate -60.0*y }
  116.    object { Slice2 rotate -80.0*y }
  117.    object { Slice2 rotate -100.0*y }
  118.    object { Slice2 rotate -120.0*y }
  119.    object { Slice2 rotate -140.0*y }
  120.    object { Slice2 rotate -160.0*y }
  121.    object { Slice2 rotate  180.0*y }
  122.    object { Slice2 rotate -200.0*y }
  123.    object { Slice2 rotate -220.0*y }
  124.    object { Slice2 rotate -240.0*y }
  125.    object { Slice2 rotate -260.0*y }
  126.    object { Slice2 rotate -280.0*y }
  127.    object { Slice2 rotate -300.0*y }
  128.    object { Slice2 rotate -320.0*y }
  129.    object { Slice2 rotate -340.0*y }
  130.  
  131.    pigment { color red 0.1 green 0.22 blue 0.8 }
  132.    finish {
  133.       ambient 0.1
  134.       diffuse 0.9
  135.       phong 0.75
  136.       phong_size 30.0
  137.    }
  138. }    
  139.  
  140.  
  141. /*******************************************/
  142. /*******************************************/
  143.  
  144. object {
  145.    Twister
  146.    rotate <-15.0, 30.0, 0.0>
  147.    translate <-16.0, 7.7, 61.5>
  148. }
  149.  
  150. object {
  151.    Twister
  152.    rotate <-15.0, 0.0, -10.0>
  153.    translate <0.0, 1.0, 88.0>
  154. }
  155.  
  156. object {
  157.    Twister
  158.    rotate <0.0, 45.0, 0.0>
  159.    translate <13.0, 25.0, 40.0>
  160. }
  161.  
  162. object {
  163.    Twister
  164.    rotate <-15.0, 0.0, -10.0>
  165.    translate <26.0, 14.0, 70.0>
  166. }
  167.  
  168. /* Little Things */
  169. object {
  170.    Thing
  171.    scale <1.5, 3.0, 1.5>
  172.    translate < -11.0, 1.55, 95.0>
  173. }
  174.  
  175. object {
  176.    Thing2
  177.    scale 6.0
  178.    rotate <-10.0, 30.0, 0.0>
  179.    translate <-11.0, 1.55, 95.0> 
  180. }
  181.  
  182. object {
  183.    Thing 
  184.    scale <1.5, 3.5, 1.5>
  185.    translate <-10.0, 10.55, 95.0> 
  186. }    
  187.  
  188. object {
  189.    Thing2 
  190.    scale 10.0
  191.    rotate <0.0, 0.0, -35.0>
  192.    translate < -10.0, 10.55, 95.0>
  193. }    
  194.  
  195. object {
  196.    Thing 
  197.    scale <1.5, 3.5, 1.5>
  198.    translate < -4.0, 4.0, 80.0>
  199. }    
  200.  
  201. object {
  202.    Thing2
  203.    scale 6.0
  204.    rotate <-30.0, 0.0, 20.0>
  205.    translate < -4.6, 5.55, 80.0> 
  206. }    
  207.  
  208.  
  209. object {
  210.    Thing 
  211.    scale <1.5, 3.5, 1.5>
  212.    translate < 11.0, 1.6, 90.0>    
  213. }
  214.  
  215. object {
  216.    Thing2    
  217.    scale <8.0, 8.0, 8.0>
  218.    rotate <0.0, 45.0, 20.0>
  219.    translate < 10.0, 7.0, 90.0>    
  220. }
  221.  
  222. /*cloud hills*/
  223. object {
  224.    Paraboloid_Y
  225.    scale <40.0, 10.0, 77.0>
  226.    rotate 180.0*z
  227.    translate <0.0, 21.0, -28.0>
  228.  
  229.    texture {
  230.       pigment {
  231.          Purple_Clouds
  232.          scale 5.0
  233.       }
  234.       finish {
  235.          ambient 0.5
  236.          diffuse 0.9
  237.       }
  238.    }
  239. }
  240.  
  241. /*cloud hill to right*/
  242. object {
  243.    Paraboloid_Y 
  244.    scale <30.0, 10.0, 40.0>
  245.    rotate 180.0*z
  246.    translate <40.0, 14.0, 50.0>
  247.  
  248.    texture {
  249.       pigment {
  250.          Purple_Clouds
  251.          scale < 7.0, 5.0, 5.0>
  252.       }
  253.       finish {
  254.          ambient 0.5
  255.          diffuse 0.9
  256.       }
  257.    }
  258. }
  259.  
  260. /*The Sun*/
  261. light_source { <150.0, 40.0, 1200.0> colour White }
  262.  
  263. /*sky*/
  264. sphere {
  265.    <0.0, 0.0, 0.0>, 2000.0
  266.    inverse
  267.  
  268.    texture {
  269.       pigment {
  270.          Sunset_Sky
  271.          translate 200.0*y
  272.          scale 1.2
  273.       }
  274.       finish {
  275.          ambient 0.6
  276.          diffuse 0.0
  277.       }
  278.    }
  279. }
  280.  
  281.