home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #7 / amigamamagazinepolishissue1998.iso / varia / povray3 / povray3_040 / pov3demo / showoff / gloflake.pov < prev    next >
Text File  |  1997-12-12  |  18KB  |  291 lines

  1. // Persistence Of Vision raytracer version 3.0 sample file.
  2. // Recursive cluster of mirrored and haloed spheres, by Dan Farmer 1996
  3. // After the classic Sphereflake by Eric Haines
  4.  
  5. #version 3.0
  6. global_settings { max_trace_level 20  assumed_gamma 2.2 }
  7.  
  8. #include "colors.inc"
  9. #include "metals.inc"
  10.  
  11. #declare Small = 1      // 9 spheres
  12. #declare Large = 2      // 91 spheres
  13. #declare Size = Large
  14.  
  15. // Set to true if you want smooth shadows and don't mind the slowdown
  16. #declare Use_Area_Lights = off
  17.  
  18. camera { // This is an unusual camera since it is a converted file
  19.    location <2.31, 1.43, 1.65>
  20.    up <0, 0, 1>          // The Z axis is up and
  21.    right <-4/3, 0, 0> // The negative X axis is right
  22.    direction <0, -1.60746, 0> // Field of view 45 degrees
  23.    sky <0, 0, 1>
  24.    look_at <0, 0, -0.1>
  25.    angle 40
  26. }
  27. background { Gray15 }
  28.  
  29. light_source { <10, -40, 40> color White
  30. #if(Use_Area_Lights)
  31.     area_light x*5, y*5, 5, 5
  32.     adaptive 1
  33. #end
  34. }
  35.  
  36. light_source { <-30, 10, 50> color White
  37. #if(Use_Area_Lights)
  38.     area_light x*5, y*5, 5, 5
  39.     adaptive 1
  40. #end
  41. }
  42.  
  43. plane { z, -0.5 pigment { MidnightBlue } finish { reflection 0.25 diffuse 0.5 }}
  44.  
  45. #declare Glow_Texture =
  46. texture {
  47.    pigment {colour Clear }
  48.  
  49.    halo {
  50.       //linear
  51.       cubic
  52.  
  53.       //emitting
  54.       glowing
  55.  
  56.       spherical_mapping
  57.       max_value 1
  58.       colour_map {
  59.           [ 0.15 color rgbt<0.75, 0.25, 0.75, 0.00> ]
  60.           [ 0.20 color rgbt<0.50, 0.50, 1.00, 0.50> ]
  61.           [ 1.00 color rgbt<1.00, 0.50, 1.00, 0.20> ]
  62.       }
  63.    }
  64.    scale 1.2
  65. }
  66.  
  67. #declare Obj1 = sphere { 0, 1 hollow texture { Glow_Texture } }
  68. #declare Obj2 = sphere { 0, 0.80 texture { T_Copper_4E } }
  69.  
  70. // Halo-textured sphereflake
  71. #declare Glow_Flake =
  72. union {
  73. #   if(Size=Small)
  74.         object { Obj1 scale 0.5}
  75.         object { Obj1 scale 0.1666670 translate <-0.172546,-0.643951,  0>        }
  76.         object { Obj1 scale 0.1666670 translate <-0.371785, 0.0996195, 0.544331> }
  77.         object { Obj1 scale 0.1666670 translate <-0.471405, 0.471405,  0>        }
  78.         object { Obj1 scale 0.1666670 translate <-0.643951,-0.172546,  0>        }
  79.         object { Obj1 scale 0.1666670 translate <0.0996195,-0.371785,  0.544331> }
  80.         object { Obj1 scale 0.1666670 translate <0.172546,  0.643951,  0>        }
  81.         object { Obj1 scale 0.1666670 translate <0.272166,  0.272166,  0.544331> }
  82.         object { Obj1 scale 0.1666670 translate <0.471405, -0.471405,  0>        }
  83.         object { Obj1 scale 0.1666670 translate <0.643951,  0.172546,  0>        }
  84. #   else
  85.         object { Obj1 scale 0.5000000 translate <0, 0, 0>  }
  86.         object { Obj1 scale 0.1666670 translate <0.643951, 0.172546, 0>  }
  87.         object { Obj1 scale 0.1666670 translate <0.471405, -0.471405, 0>  }
  88.         object { Obj1 scale 0.1666670 translate <0.272166, 0.272166, 0.544331>  }
  89.         object { Obj1 scale 0.1666670 translate <0.172546, 0.643951, 0>  }
  90.         object { Obj1 scale 0.1666670 translate <0.0996195, -0.371785, 0.544331>  }
  91.         object { Obj1 scale 0.1666670 translate <-0.643951, -0.172546, 0>  }
  92.         object { Obj1 scale 0.1666670 translate <-0.471405, 0.471405, 0>  }
  93.         object { Obj1 scale 0.1666670 translate <-0.371785, 0.0996195, 0.544331>  }
  94.         object { Obj1 scale 0.1666670 translate <-0.172546, -0.643951, 0>  }
  95.         object { Obj1 scale 0.0555556 translate <0.852418, 0.0955788, 7.6165e-17>  }
  96.         object { Obj1 scale 0.0555556 translate <0.802608, 0.281471, 0.111111>  }
  97.         object { Obj1 scale 0.0555556 translate <0.802608, 0.281471, -0.111111>  }
  98.         object { Obj1 scale 0.0555556 translate <0.69376, -0.0133465, 0.111111>  }
  99.         object { Obj1 scale 0.0555556 translate <0.69376, -0.0133465, -0.111111>  }
  100.         object { Obj1 scale 0.0555556 translate <0.690426, -0.508983, 8.16131e-17>  }
  101.         object { Obj1 scale 0.0555556 translate <0.643951, 0.172546, 0.222222>  }
  102.         object { Obj1 scale 0.0555556 translate <0.643951, 0.172546, -0.222222>  }
  103.         object { Obj1 scale 0.0555556 translate <0.607487, -0.335322, 0.111111>  }
  104.         object { Obj1 scale 0.0555556 translate <0.607487, -0.335322, -0.111111>  }
  105.         object { Obj1 scale 0.0555556 translate <0.594141, 0.358439, 0.111111>  }
  106.         object { Obj1 scale 0.0555556 translate <0.594141, 0.358439, -0.111111>  }
  107.         object { Obj1 scale 0.0555556 translate <0.554344, -0.645066, 0.111111>  }
  108.         object { Obj1 scale 0.0555556 translate <0.554344, -0.645066, -0.111111>  }
  109.         object { Obj1 scale 0.0555556 translate <0.471405, -0.471405, 0.222222>  }
  110.         object { Obj1 scale 0.0555556 translate <0.471405, -0.471405, -0.222222>  }
  111.         object { Obj1 scale 0.0555556 translate <0.461844, 0.304709, 0.43322>  }
  112.         object { Obj1 scale 0.0555556 translate <0.4293, 0.115031, 0.544331>  }
  113.         object { Obj1 scale 0.0555556 translate <0.420314, 0.420314, 0.618405>  }
  114.         object { Obj1 scale 0.0555556 translate <0.38777, 0.230635, 0.729516>  }
  115.         object { Obj1 scale 0.0555556 translate <0.358439, 0.594141, 0.111111>  }
  116.         object { Obj1 scale 0.0555556 translate <0.358439, 0.594141, -0.111111>  }
  117.         object { Obj1 scale 0.0555556 translate <0.335322, -0.607487, 0.111111>  }
  118.         object { Obj1 scale 0.0555556 translate <0.335322, -0.607487, -0.111111>  }
  119.         object { Obj1 scale 0.0555556 translate <0.31427, -0.31427, 0.544331>  }
  120.         object { Obj1 scale 0.0555556 translate <0.304709, 0.461844, 0.43322>  }
  121.         object { Obj1 scale 0.0555556 translate <0.281471, 0.802608, 0.111111>  }
  122.         object { Obj1 scale 0.0555556 translate <0.281471, 0.802608, -0.111111>  }
  123.         object { Obj1 scale 0.0555556 translate <0.247614, -0.494808, 0.43322>  }
  124.         object { Obj1 scale 0.0555556 translate <0.239622, 0.082487, 0.655442>  }
  125.         object { Obj1 scale 0.0555556 translate <0.230635, 0.38777, 0.729516>  }
  126.         object { Obj1 scale 0.0555556 translate <0.220501, -0.393621, 0.729516>  }
  127.         object { Obj1 scale 0.0555556 translate <0.172546, 0.643951, 0.222222>  }
  128.         object { Obj1 scale 0.0555556 translate <0.172546, 0.643951, -0.222222>  }
  129.         object { Obj1 scale 0.0555556 translate <0.166275, -0.191247, 0.655442>  }
  130.         object { Obj1 scale 0.0555556 translate <0.153845, -0.574159, 0.618405>  }
  131.         object { Obj1 scale 0.0555556 translate <0.115031, 0.4293, 0.544331>  }
  132.         object { Obj1 scale 0.0555556 translate <0.0955788, 0.852418, -1.3628e-17>  }
  133.         object { Obj1 scale 0.0555556 translate <0.082487, 0.239622, 0.655442>  }
  134.         object { Obj1 scale 0.0555556 translate <0.0329639, -0.552323, 0.43322>  }
  135.         object { Obj1 scale 0.0555556 translate <0.0133465, -0.69376, 0.111111>  }
  136.         object { Obj1 scale 0.0555556 translate <0.0133465, -0.69376, -0.111111>  }
  137.         object { Obj1 scale 0.0555556 translate <0.0058509, -0.451136, 0.729516>  }
  138.         object { Obj1 scale 0.0555556 translate <-0.835815, -0.157543, 0.111111>  }
  139.         object { Obj1 scale 0.0555556 translate <-0.835815, -0.157543, -0.111111>  }
  140.         object { Obj1 scale 0.0555556 translate <-0.786005, -0.343435, -3.33063e-17>  }
  141.         object { Obj1 scale 0.0555556 translate <-0.69376, 0.0133465, 0.111111>  }
  142.         object { Obj1 scale 0.0555556 translate <-0.69376, 0.0133465, -0.111111>  }
  143.         object { Obj1 scale 0.0555556 translate <-0.645066, 0.554344, 0.111111>  }
  144.         object { Obj1 scale 0.0555556 translate <-0.645066, 0.554344, -0.111111>  }
  145.         object { Obj1 scale 0.0555556 translate <-0.643951, -0.172546, 0.222222>  }
  146.         object { Obj1 scale 0.0555556 translate <-0.643951, -0.172546, -0.222222>  }
  147.         object { Obj1 scale 0.0555556 translate <-0.607487, 0.335322, 0.111111>  }
  148.         object { Obj1 scale 0.0555556 translate <-0.607487, 0.335322, -0.111111>  }
  149.         object { Obj1 scale 0.0555556 translate <-0.594141, -0.358439, 0.111111>  }
  150.         object { Obj1 scale 0.0555556 translate <-0.594141, -0.358439, -0.111111>  }
  151.         object { Obj1 scale 0.0555556 translate <-0.574159, 0.153845, 0.618405>  }
  152.         object { Obj1 scale 0.0555556 translate <-0.552323, 0.0329639, 0.43322>  }
  153.         object { Obj1 scale 0.0555556 translate <-0.508983, 0.690426, -1.91093e-17>  }
  154.         object { Obj1 scale 0.0555556 translate <-0.494808, 0.247614, 0.43322>  }
  155.         object { Obj1 scale 0.0555556 translate <-0.471405, 0.471405, 0.222222>  }
  156.         object { Obj1 scale 0.0555556 translate <-0.471405, 0.471405, -0.222222>  }
  157.         object { Obj1 scale 0.0555556 translate <-0.451136, 0.0058509, 0.729516>  }
  158.         object { Obj1 scale 0.0555556 translate <-0.4293, -0.115031, 0.544331>  }
  159.         object { Obj1 scale 0.0555556 translate <-0.393621, 0.220501, 0.729516>  }
  160.         object { Obj1 scale 0.0555556 translate <-0.358439, -0.594141, 0.111111>  }
  161.         object { Obj1 scale 0.0555556 translate <-0.358439, -0.594141, -0.111111>  }
  162.         object { Obj1 scale 0.0555556 translate <-0.343435, -0.786005, -2.97525e-17>  }
  163.         object { Obj1 scale 0.0555556 translate <-0.335322, 0.607487, 0.111111>  }
  164.         object { Obj1 scale 0.0555556 translate <-0.335322, 0.607487, -0.111111>  }
  165.         object { Obj1 scale 0.0555556 translate <-0.31427, 0.31427, 0.544331>  }
  166.         object { Obj1 scale 0.0555556 translate <-0.248762, -0.0483751, 0.655442>  }
  167.         object { Obj1 scale 0.0555556 translate <-0.191247, 0.166275, 0.655442>  }
  168.         object { Obj1 scale 0.0555556 translate <-0.172546, -0.643951, 0.222222>  }
  169.         object { Obj1 scale 0.0555556 translate <-0.172546, -0.643951, -0.222222>  }
  170.         object { Obj1 scale 0.0555556 translate <-0.157543, -0.835815, 0.111111>  }
  171.         object { Obj1 scale 0.0555556 translate <-0.157543, -0.835815, -0.111111>  }
  172.         object { Obj1 scale 0.0555556 translate <-0.115031, -0.4293, 0.544331>  }
  173.         object { Obj1 scale 0.0555556 translate <-0.0483751, -0.248762, 0.655442>  }
  174.         object { Obj1 scale 0.0555556 translate <-0.0133465, 0.69376, 0.111111>  }
  175.         object { Obj1 scale 0.0555556 translate <-0.0133465, 0.69376, -0.111111>  }
  176. #   end
  177. }
  178.  
  179.  
  180. // Sphereflake
  181. #declare Sphere_Flake =
  182. union {
  183. #   if(Size=Small)
  184.         object { Obj2 scale 0.5}
  185.         object { Obj2 scale 0.1666670 translate <0.272166,  0.272166,  0.544331> }
  186.         object { Obj2 scale 0.1666670 translate <0.643951,  0.172546,  0>        }
  187.         object { Obj2 scale 0.1666670 translate <0.172546,  0.643951,  0>        }
  188.         object { Obj2 scale 0.1666670 translate <-0.371785, 0.0996195, 0.544331> }
  189.         object { Obj2 scale 0.1666670 translate <-0.471405, 0.471405,  0>        }
  190.         object { Obj2 scale 0.1666670 translate <-0.643951,-0.172546,  0>        }
  191.         object { Obj2 scale 0.1666670 translate <0.0996195,-0.371785,  0.544331> }
  192.         object { Obj2 scale 0.1666670 translate <-0.172546,-0.643951,  0>        }
  193.         object { Obj2 scale 0.1666670 translate <0.471405, -0.471405,  0>        }
  194. #   else
  195.         object { Obj2 scale 0.5 translate <0, 0, 0>  }
  196.         object { Obj2 scale 0.1666670 translate <0.643951, 0.172546, 0>  }
  197.         object { Obj2 scale 0.1666670 translate <0.471405, -0.471405, 0>  }
  198.         object { Obj2 scale 0.1666670 translate <0.272166, 0.272166, 0.544331>  }
  199.         object { Obj2 scale 0.1666670 translate <0.172546, 0.643951, 0>  }
  200.         object { Obj2 scale 0.1666670 translate <0.0996195, -0.371785, 0.544331>  }
  201.         object { Obj2 scale 0.1666670 translate <-0.643951, -0.172546, 0>  }
  202.         object { Obj2 scale 0.1666670 translate <-0.471405, 0.471405, 0>  }
  203.         object { Obj2 scale 0.1666670 translate <-0.371785, 0.0996195, 0.544331>  }
  204.         object { Obj2 scale 0.1666670 translate <-0.172546, -0.643951, 0>  }
  205.         object { Obj2 scale 0.0555556 translate <0.852418, 0.0955788, 7.6165e-17>  }
  206.         object { Obj2 scale 0.0555556 translate <0.802608, 0.281471, 0.111111>  }
  207.         object { Obj2 scale 0.0555556 translate <0.802608, 0.281471, -0.111111>  }
  208.         object { Obj2 scale 0.0555556 translate <0.69376, -0.0133465, 0.111111>  }
  209.         object { Obj2 scale 0.0555556 translate <0.69376, -0.0133465, -0.111111>  }
  210.         object { Obj2 scale 0.0555556 translate <0.690426, -0.508983, 8.16131e-17>  }
  211.         object { Obj2 scale 0.0555556 translate <0.643951, 0.172546, 0.222222>  }
  212.         object { Obj2 scale 0.0555556 translate <0.643951, 0.172546, -0.222222>  }
  213.         object { Obj2 scale 0.0555556 translate <0.607487, -0.335322, 0.111111>  }
  214.         object { Obj2 scale 0.0555556 translate <0.607487, -0.335322, -0.111111>  }
  215.         object { Obj2 scale 0.0555556 translate <0.594141, 0.358439, 0.111111>  }
  216.         object { Obj2 scale 0.0555556 translate <0.594141, 0.358439, -0.111111>  }
  217.         object { Obj2 scale 0.0555556 translate <0.554344, -0.645066, 0.111111>  }
  218.         object { Obj2 scale 0.0555556 translate <0.554344, -0.645066, -0.111111>  }
  219.         object { Obj2 scale 0.0555556 translate <0.471405, -0.471405, 0.222222>  }
  220.         object { Obj2 scale 0.0555556 translate <0.471405, -0.471405, -0.222222>  }
  221.         object { Obj2 scale 0.0555556 translate <0.461844, 0.304709, 0.43322>  }
  222.         object { Obj2 scale 0.0555556 translate <0.4293, 0.115031, 0.544331>  }
  223.         object { Obj2 scale 0.0555556 translate <0.420314, 0.420314, 0.618405>  }
  224.         object { Obj2 scale 0.0555556 translate <0.38777, 0.230635, 0.729516>  }
  225.         object { Obj2 scale 0.0555556 translate <0.358439, 0.594141, 0.111111>  }
  226.         object { Obj2 scale 0.0555556 translate <0.358439, 0.594141, -0.111111>  }
  227.         object { Obj2 scale 0.0555556 translate <0.335322, -0.607487, 0.111111>  }
  228.         object { Obj2 scale 0.0555556 translate <0.335322, -0.607487, -0.111111>  }
  229.         object { Obj2 scale 0.0555556 translate <0.31427, -0.31427, 0.544331>  }
  230.         object { Obj2 scale 0.0555556 translate <0.304709, 0.461844, 0.43322>  }
  231.         object { Obj2 scale 0.0555556 translate <0.281471, 0.802608, 0.111111>  }
  232.         object { Obj2 scale 0.0555556 translate <0.281471, 0.802608, -0.111111>  }
  233.         object { Obj2 scale 0.0555556 translate <0.247614, -0.494808, 0.43322>  }
  234.         object { Obj2 scale 0.0555556 translate <0.239622, 0.082487, 0.655442>  }
  235.         object { Obj2 scale 0.0555556 translate <0.230635, 0.38777, 0.729516>  }
  236.         object { Obj2 scale 0.0555556 translate <0.220501, -0.393621, 0.729516>  }
  237.         object { Obj2 scale 0.0555556 translate <0.172546, 0.643951, 0.222222>  }
  238.         object { Obj2 scale 0.0555556 translate <0.172546, 0.643951, -0.222222>  }
  239.         object { Obj2 scale 0.0555556 translate <0.166275, -0.191247, 0.655442>  }
  240.         object { Obj2 scale 0.0555556 translate <0.153845, -0.574159, 0.618405>  }
  241.         object { Obj2 scale 0.0555556 translate <0.115031, 0.4293, 0.544331>  }
  242.         object { Obj2 scale 0.0555556 translate <0.0955788, 0.852418, -1.3628e-17>  }
  243.         object { Obj2 scale 0.0555556 translate <0.082487, 0.239622, 0.655442>  }
  244.         object { Obj2 scale 0.0555556 translate <0.0329639, -0.552323, 0.43322>  }
  245.         object { Obj2 scale 0.0555556 translate <0.0133465, -0.69376, 0.111111>  }
  246.         object { Obj2 scale 0.0555556 translate <0.0133465, -0.69376, -0.111111>  }
  247.         object { Obj2 scale 0.0555556 translate <0.0058509, -0.451136, 0.729516>  }
  248.         object { Obj2 scale 0.0555556 translate <-0.835815, -0.157543, 0.111111>  }
  249.         object { Obj2 scale 0.0555556 translate <-0.835815, -0.157543, -0.111111>  }
  250.         object { Obj2 scale 0.0555556 translate <-0.786005, -0.343435, -3.33063e-17>  }
  251.         object { Obj2 scale 0.0555556 translate <-0.69376, 0.0133465, 0.111111>  }
  252.         object { Obj2 scale 0.0555556 translate <-0.69376, 0.0133465, -0.111111>  }
  253.         object { Obj2 scale 0.0555556 translate <-0.645066, 0.554344, 0.111111>  }
  254.         object { Obj2 scale 0.0555556 translate <-0.645066, 0.554344, -0.111111>  }
  255.         object { Obj2 scale 0.0555556 translate <-0.643951, -0.172546, 0.222222>  }
  256.         object { Obj2 scale 0.0555556 translate <-0.643951, -0.172546, -0.222222>  }
  257.         object { Obj2 scale 0.0555556 translate <-0.607487, 0.335322, 0.111111>  }
  258.         object { Obj2 scale 0.0555556 translate <-0.607487, 0.335322, -0.111111>  }
  259.         object { Obj2 scale 0.0555556 translate <-0.594141, -0.358439, 0.111111>  }
  260.         object { Obj2 scale 0.0555556 translate <-0.594141, -0.358439, -0.111111>  }
  261.         object { Obj2 scale 0.0555556 translate <-0.574159, 0.153845, 0.618405>  }
  262.         object { Obj2 scale 0.0555556 translate <-0.552323, 0.0329639, 0.43322>  }
  263.         object { Obj2 scale 0.0555556 translate <-0.508983, 0.690426, -1.91093e-17>  }
  264.         object { Obj2 scale 0.0555556 translate <-0.494808, 0.247614, 0.43322>  }
  265.         object { Obj2 scale 0.0555556 translate <-0.471405, 0.471405, 0.222222>  }
  266.         object { Obj2 scale 0.0555556 translate <-0.471405, 0.471405, -0.222222>  }
  267.         object { Obj2 scale 0.0555556 translate <-0.451136, 0.0058509, 0.729516>  }
  268.         object { Obj2 scale 0.0555556 translate <-0.4293, -0.115031, 0.544331>  }
  269.         object { Obj2 scale 0.0555556 translate <-0.393621, 0.220501, 0.729516>  }
  270.         object { Obj2 scale 0.0555556 translate <-0.358439, -0.594141, 0.111111>  }
  271.         object { Obj2 scale 0.0555556 translate <-0.358439, -0.594141, -0.111111>  }
  272.         object { Obj2 scale 0.0555556 translate <-0.343435, -0.786005, -2.97525e-17>  }
  273.         object { Obj2 scale 0.0555556 translate <-0.335322, 0.607487, 0.111111>  }
  274.         object { Obj2 scale 0.0555556 translate <-0.335322, 0.607487, -0.111111>  }
  275.         object { Obj2 scale 0.0555556 translate <-0.31427, 0.31427, 0.544331>  }
  276.         object { Obj2 scale 0.0555556 translate <-0.248762, -0.0483751, 0.655442>  }
  277.         object { Obj2 scale 0.0555556 translate <-0.191247, 0.166275, 0.655442>  }
  278.         object { Obj2 scale 0.0555556 translate <-0.172546, -0.643951, 0.222222>  }
  279.         object { Obj2 scale 0.0555556 translate <-0.172546, -0.643951, -0.222222>  }
  280.         object { Obj2 scale 0.0555556 translate <-0.157543, -0.835815, 0.111111>  }
  281.         object { Obj2 scale 0.0555556 translate <-0.157543, -0.835815, -0.111111>  }
  282.         object { Obj2 scale 0.0555556 translate <-0.115031, -0.4293, 0.544331>  }
  283.         object { Obj2 scale 0.0555556 translate <-0.0483751, -0.248762, 0.655442>  }
  284.         object { Obj2 scale 0.0555556 translate <-0.0133465, 0.69376, 0.111111>  }
  285.         object { Obj2 scale 0.0555556 translate <-0.0133465, 0.69376, -0.111111>  }
  286. #   end
  287. }
  288.  
  289. object { Glow_Flake }
  290. object { Sphere_Flake }
  291.