home *** CD-ROM | disk | FTP | other *** search
/ Avalon - 3D Objects & Resources / Avalon.iso / misc / mac / povscn.sit / POVSCN / INCLUDE / TEXTURES.INC < prev   
Text File  |  1992-07-18  |  27KB  |  828 lines

  1. // Persistence of Vision Raytracer
  2. // Standard textures include file
  3. // See textures.doc for info.
  4.  
  5. //*****************************************************************************
  6. //                      STONE TEXTURES
  7. //*****************************************************************************
  8.  
  9. // A nice Jade.  Color map works nicely with other textures, too.
  10. #declare Jade = texture {
  11.    marble
  12.    turbulence 1.8
  13.    colour_map {
  14.       [0.0 0.8   colour red 0.1 green 0.6 blue 0.1
  15.       colour red 0.0 green 0.3 blue 0.0]
  16.       [0.8 1 colour red 0.1 green 0.6 blue 0.1
  17.       colour red 0.0 green 0.2 blue 0.0]
  18.    }
  19. }
  20.  
  21. // Classic white marble with red veins.  Over-worked, like checkers.
  22. #declare Red_Marble = texture {
  23.    marble
  24.    turbulence 1.0
  25.    colour_map {
  26.       [0.0 0.8   colour red 0.8 green 0.8 blue 0.6
  27.       colour red 0.8 green 0.4 blue 0.4]
  28.       [0.8 1 colour red 0.8 green 0.4 blue 0.4
  29.       colour red 0.8 green 0.2 blue 0.2]
  30.    }
  31. }
  32.  
  33. // White marble with black veins.
  34. #declare White_Marble = texture {
  35.    marble
  36.    turbulence 1.0
  37.    colour_map {
  38.       [0.0 0.8  colour red 0.9 green 0.9 blue 0.9
  39.       colour red 0.5 green 0.5 blue 0.5]
  40.       [0.8 1 colour red 0.5 green 0.5 blue 0.5
  41.       colour red 0.2 green 0.2 blue 0.2]
  42.    }
  43. }
  44.  
  45. // Light blue and black marble with a thin red vein 
  46. // Try changing LBlue and Vein below to modify the marble.
  47. #declare LBlue = colour red 0.0 green 0.6 blue 0.6
  48. #declare Vein = colour red 0.6 green 0.0 blue 0.0
  49. #declare Blood_Marble = texture {
  50.    marble
  51.    turbulence 2.3
  52.    colour_map {
  53.       [0.0 0.8   colour Black  colour LBlue]
  54.       [0.8 0.9   colour LBlue  colour Vein]
  55.       [0.9 1 colour Vein   colour Black]
  56.    }
  57. }
  58.  
  59. // a grey blue agate -- kind of purplish.
  60. #declare Blue_Agate = texture {
  61.    agate
  62.    colour_map {
  63.       [0.0 0.5   colour red 0.30 green 0.30 blue 0.50
  64.       colour red 0.30 green 0.30 blue 0.50]
  65.       [0.5 0.55  colour red 0.30 green 0.30 blue 0.50
  66.       colour red 0.20 green 0.20 blue 0.30]
  67.       [0.55 0.6  colour red 0.20 green 0.20 blue 0.30
  68.       colour red 0.25 green 0.25 blue 0.35]
  69.       [0.6 0.7   colour red 0.25 green 0.25 blue 0.35
  70.       colour red 0.15 green 0.15 blue 0.26]
  71.       [0.7 0.8   colour red 0.15 green 0.15 blue 0.26
  72.       colour red 0.10 green 0.10 blue 0.20]
  73.       [0.8 0.9   colour red 0.10 green 0.10 blue 0.20
  74.       colour red 0.30 green 0.30 blue 0.50]
  75.       [0.9 1 colour red 0.30 green 0.30 blue 0.50
  76.       colour red 0.10 green 0.10 blue 0.20]
  77.    }
  78. }
  79.  
  80. // Deep blue agate -- almost glows.
  81. #declare Sapphire_Agate = texture {
  82.    agate
  83.    colour_map {
  84.       [0.0 0.3   colour red 0.0 green 0.0 blue 0.9
  85.       colour red 0.0 green 0.0 blue 0.8]
  86.       [0.3 1 colour red 0.0 green 0.0 blue 0.8
  87.       colour red 0.0 green 0.0 blue 0.4]
  88.    }
  89. }
  90.  
  91. // Brown and white agate -- very pretty.
  92. #declare Brown_Agate = texture {
  93.    agate
  94.    colour_map {
  95.       [0.0 0.5   colour red 1.0 green 1.0 blue 1.0
  96.       colour red 0.9 green 0.7 blue 0.6]
  97.       [0.5 0.6   colour red 0.9 green 0.7 blue 0.6
  98.       colour red 0.9 green 0.7 blue 0.4]
  99.       [0.6 1 colour red 0.9 green 0.7 blue 0.4
  100.       colour red 0.7 green 0.4 blue 0.2]
  101.    }
  102. }
  103.  
  104.  
  105. #declare Pink_Granite =  texture {
  106.    granite
  107.    turbulence 0
  108.    color_map {
  109.       [0.0 0.4 color Black color Black]
  110.       [0.4 0.45 color Quartz color Quartz]
  111.       [0.45 0.5 color Quartz color Gray]
  112.       [0.5 0.55 color Gray color Feldspar]
  113.       [0.55 0.8 color Feldspar color Feldspar]
  114.       [0.8 1.0 color Feldspar color Orange]
  115.    }
  116. }
  117. // Gray-pink alabaster or marble.  Layers are scaled for a unit object
  118. // and relative to each other.
  119. #declare PinkAlabaster =
  120. // Underlying surface is very subtly mottled with bozo
  121. texture {
  122.    ambient 0.25
  123.    bozo
  124.    turbulence 0.25
  125.    color_map {
  126.       [0.0 1.0 color red 0.9 green 0.75 blue 0.75
  127.       color red 0.6 green 0.6 blue 0.6 ]
  128.    }
  129.    scale <.4 .4 .4>
  130. }
  131.  
  132. // Second layer texture has some alpha values, yet a fair amount of color
  133. // Viening is kept quite thin in color map and by the largish scale.
  134. texture {
  135.    granite
  136.    color_map {
  137.       [0.0 0.9 color DustyRose alpha 1 color DustyRose alpha 0.5 ]
  138.       [0.9 1.0  color DarkSlateGray color DarkSlateGray ]
  139.    }
  140.    // I know this seem contradictory, but it seems to work!
  141.    specular 1.0   roughness 0.001
  142.    phong 0.25     phong_size 75
  143.    brilliance 4
  144.    scale <2 2 2>       // Twice as large as unit shape
  145. }
  146.  
  147.  
  148. //*****************************************************************************
  149. //                           SKY TEXTURES
  150. //*****************************************************************************
  151.  
  152. // Basic Blue Sky w/ clouds.
  153. #declare Blue_Sky = texture {
  154.    bozo
  155.    turbulence 0.3
  156.    colour_map {
  157.       [0.0 0.5   colour red 0.25 green 0.25 blue 0.5
  158.       colour red 0.25 green 0.25 blue 0.5]
  159.       [0.5 0.6   colour red 0.25 green 0.25 blue 0.5
  160.       colour red 0.7 green 0.7 blue 0.7]
  161.       [0.6 1 colour red 0.7 green 0.7 blue 0.7
  162.       colour red 0.3 green 0.3 blue 0.3]
  163.    }
  164. }
  165.  
  166. // Bright Blue Sky w/ very white clouds.
  167. #declare Bright_Blue_Sky = texture {
  168.    bozo
  169.    turbulence 0.56
  170.    colour_map {
  171.       [0.0 0.5  colour red 0.5 green 0.5 blue 1.0
  172.       colour red 0.5 green 0.5 blue 1.0]
  173.       [0.5 0.6  colour red 0.5 green 0.5 blue 1.0
  174.       colour red 1.0 green 1.0 blue 1.0]
  175.       [0.6 1 colour red 1.0 green 1.0 blue 1.0
  176.       colour red 0.5 green 0.5 blue 0.5]
  177.    }
  178. }
  179.  
  180. // Another sky
  181. #declare Blue_Sky2 = 
  182. texture {
  183.    agate
  184.    color_map {
  185.       [ 0 .3  color Blue color Blue  ]
  186.       [.3  1  color Blue   color White   ]
  187.    }
  188.    scale <.75 .15 .75>
  189. }
  190.  
  191. // Small puffs of white clouds
  192. #declare Blue_Sky3 = 
  193. texture {
  194.    granite
  195.    turbulence 0.1
  196.    color_map {
  197.       [ 0 .3  color Blue color Blue  ]
  198.       [.3  1  color Blue   color White   ]
  199.    }
  200.    scale <.75 .15 .75>
  201. }
  202.  
  203.  
  204. // Red sky w/ yellow clouds -- very surreal.
  205. #declare Blood_Sky = texture {
  206.    bozo
  207.    turbulence 0.5
  208.    colour_map {
  209.       [0.0 0.5  colour red 0.9 green 0.7 blue 0.0
  210.       colour red 0.3 green 0.2 blue 0.0]
  211.       [0.5 0.6  colour red 0.6 green 0.025 blue 0.0
  212.       colour red 0.9 green 0.7 blue 0.0]
  213.       [0.6 1 colour red 0.6 green 0.025 blue 0.0
  214.       colour red 0.6 green 0.025 blue 0.0]
  215.    }
  216. }
  217.  
  218. // Black sky with red and purple clouds 
  219. // Try adding turbulence values from 0.1 - 5.0 -- CdW
  220. #declare Apocalypse = texture {
  221.    bozo
  222.    colour_map {
  223.       [0.0 0.4  colour red 0.8 green 0.0 blue 0.0
  224.       colour red 0.4 green 0.0 blue 0.4]
  225.       [0.4 0.6  colour red 0.4 green 0.0 blue 0.4
  226.       colour red 0.0 green 0.0 blue 0.2]
  227.       [0.6 1 colour red 0.0 green 0.0 blue 0.2
  228.       colour red 0.0 green 0.0 blue 0.0]
  229.    }
  230. }
  231.  
  232. // White clouds w/ transparent sky.
  233. #declare Clouds = texture {
  234.    bozo
  235.    turbulence 0.0
  236.    colour_map {
  237.       [0.0 0.1   colour red 0.8 green 0.8 blue 0.8
  238.       colour red 0.8 green 0.8 blue 0.8]
  239.       [0.1 0.5   colour red 0.8 green 0.8 blue 0.8 alpha 0.0
  240.       colour red 1.0 green 1.0 blue 1.0 alpha 1.0 ]
  241.       [0.5 1 colour red 1.0 green 1.0 blue 1.0 alpha 1.0
  242.       colour red 1.0 green 1.0 blue 1.0 alpha 1.0]
  243.    }
  244. }
  245.  
  246. //*****************************************************************************
  247. //                           WOODEN TEXTURES
  248. //*****************************************************************************
  249.  
  250. // A light reddish wood.
  251. #declare Cherry_Wood = texture {
  252.    wood
  253.    turbulence 0.3
  254.    colour_map {
  255.       [0.0 0.8  colour red 0.666 green 0.312 blue 0.2
  256.       colour red 0.666 green 0.312 blue 0.2]
  257.       [0.8 1 colour red 0.4 green 0.133 blue 0.066
  258.       colour red 0.2 green 0.065 blue 0.033]
  259.    }
  260. }
  261.  
  262. // A light tan wood with greenish rings.
  263. #declare Pine_Wood = texture {
  264.    wood
  265.    turbulence 0.2
  266.    colour_map {
  267.       [0.0 0.8  colour red 1.0 green 0.71875 blue 0.25
  268.       colour red 1.0 green 0.71875 blue 0.25]
  269.       [0.8 1 colour red 0.5 green 0.5 blue 0.066
  270.       colour red 0.4 green 0.4 blue 0.033]
  271.    }
  272. }
  273.  
  274. // Dark wood with a greenish hue to it.
  275. #declare Dark_Wood = texture {
  276.    wood
  277.    turbulence 0.2
  278.    colour_map {
  279.       [0.0 0.8  colour red  0.42857 green 0.23810 blue 0.04762
  280.       colour red  0.42857 green 0.23810 blue 0.04762]
  281.       [0.8 1 colour red 0.4 green 0.333 blue 0.066
  282.       colour red 0.2 green 0.033 blue 0.033]
  283.    }
  284. }
  285.  
  286. // Light tan wood with brown rings.
  287. #declare Tan_Wood = texture {
  288.    wood
  289.    turbulence 0.1
  290.    colour_map {
  291.       [0.0 0.8  colour red 0.888 green 0.600 blue 0.3
  292.       colour red 0.888 green 0.600 blue 0.3]
  293.       [0.8 1 colour red 0.6 green 0.4 blue 0.2
  294.       colour red 0.4 green 0.3 blue 0.2]
  295.    }
  296. }
  297.  
  298. // A very pale wood with tan rings -- kind of balsa-ish.
  299. #declare White_Wood = texture {
  300.    wood
  301.    turbulence 0.6
  302.    colour_map {
  303.       [0.0 0.8  colour red 0.93 green 0.71 blue 0.532
  304.       colour red 0.98 green 0.81 blue 0.6]
  305.       [0.8 1 colour red 0.6 green 0.333 blue 0.266
  306.       colour red 0.7 green 0.6 blue 0.23]
  307.    }
  308. }
  309.  
  310. // Brown wood - looks stained.
  311. #declare Tom_Wood = texture {
  312.    wood
  313.    turbulence 0.31
  314.    colour_map {
  315.       [0.0 0.8   colour red 0.7 green 0.3 blue 0.0
  316.       colour red 0.7 green 0.3 blue 0.0]
  317.       [0.8 1  colour red 0.5 green 0.2 blue 0.0
  318.       colour red 0.4 green 0.1 blue 0.0]
  319.    }
  320. }
  321.  
  322. // The scaling in these definitions is relative to a unit-sized object
  323. // (radius 1).  Note that woods are functionally equivilent to a log lying
  324. // along the z axis.  For best results, think like a woodcutter trying to
  325. // extract the nicest board out of that log.  A little tilt along the x axis
  326. // will give elliptical rings of grain like you'd expect to find on most
  327. // boards.  Experiment.
  328. // (The first five came from DODEC2.POV in the POV-Ray Scenefile Library.)
  329. #declare DMFWood1 = texture {
  330.    wood
  331.    turbulence 0.04
  332.    octaves 3
  333.    scale <0.05 .05 1>
  334.    colour_map {
  335.       [0.00 0.10 color red 0.60 green 0.30 blue 0.18
  336.       color red 0.60 green 0.30 blue 0.18]
  337.       [0.10 0.90 color red 0.60 green 0.30 blue 0.18
  338.       color red 0.30 green 0.15 blue 0.09]
  339.       [0.90 1.0  color red 0.30 green 0.15 blue 0.09
  340.       color red 0.30 green 0.15 blue 0.09]
  341.    }
  342. }
  343.  
  344. #declare DMFWood2 = texture {
  345.    wood
  346.    turbulence 0.03
  347.    octaves 4
  348.    scale <0.05 .05 1>
  349.    colour_map {
  350.       [0.00 0.10 color red 0.52 green 0.37 blue 0.26
  351.       color red 0.52 green 0.37 blue 0.26]
  352.       [0.10 0.90 color red 0.52 green 0.37 blue 0.26
  353.       color red 0.42 green 0.26 blue 0.15]
  354.       [0.90 1.0  color red 0.42 green 0.26 blue 0.15
  355.       color red 0.42 green 0.26 blue 0.15]
  356.    }
  357. }
  358.  
  359. #declare DMFWood3 = texture {
  360.    wood
  361.    turbulence 0.05
  362.    octaves 2
  363.    scale <0.05 .05 1>
  364.    colour_map {
  365.       [0.00 0.10 color red 0.4 green 0.133 blue 0.066
  366.       color red 0.4 green 0.133 blue 0.066]
  367.       [0.10 0.90 color red 0.4 green 0.133 blue 0.066
  368.       color red 0.2 green 0.065 blue 0.033]
  369.       [0.90 1.0  color red 0.2 green 0.065 blue 0.033
  370.       color red 0.2 green 0.065 blue 0.033]
  371.    }
  372. }
  373.  
  374. #declare DMFWood4 = texture {
  375.    wood
  376.    turbulence 0.04
  377.    octaves 3
  378.    scale <0.05 .05 1>
  379.    colour_map {
  380.       [0.00 0.10 color red 0.888 green 0.600 blue 0.3
  381.       color red 0.888 green 0.600 blue 0.3]
  382.       [0.10 0.90 color red 0.888 green 0.600 blue 0.3
  383.       color red 0.6 green 0.4 blue 0.2]
  384.       [0.90 1.0  color red 0.6 green 0.4 blue 0.2
  385.       color red 0.6 green 0.4 blue 0.2]
  386.    }
  387. }
  388.  
  389. #declare DMFWood5 = texture {
  390.    wood
  391.    turbulence 0.05
  392.    octaves 6
  393.    scale <0.075 .075 1>
  394.    colour_map {
  395.       [0.00 0.10 color red 0.3 green 0.1 blue 0.05
  396.       color red 0.3 green 0.1 blue 0.05]
  397.       [0.10 0.90 color red 0.3 green 0.1 blue 0.05
  398.       color red 0.25 green 0.07 blue 0.038]
  399.       [0.90 1.0  color red 0.25 green 0.07 blue 0.038
  400.       color red 0.25 green 0.07 blue 0.038]
  401.    }
  402. }
  403.  
  404. // Is this really oak?  I dunno.  Quite light, maybe more like spruce.
  405. #declare DMFLightOak =  texture {
  406.    wood
  407.    turbulence 0.05            // For best results,  keep this low!
  408.    scale <0.2 0.2 1>          // Scaled or a unit object
  409.    colour_map {
  410.       [0.00 0.10 color red 0.42 green 0.26 blue 0.15
  411.       color red 0.42 green 0.26 blue 0.15]
  412.       [0.10 0.90 color red 0.42 green 0.26 blue 0.15
  413.       color red 0.52 green 0.37 blue 0.26 ]
  414.       [0.90 1 color red 0.52 green 0.37 blue 0.26
  415.       color red 0.52 green 0.37 blue 0.26  ]
  416.    }
  417. }
  418.  
  419. // Looks like old desk oak if used correctly.
  420. #declare DMFDarkOak = texture {
  421.    wood
  422.    turbulence 0.04            // For best results,  keep this low!
  423.    octaves 3
  424.    scale <0.2 0.2 1>          // Scaled or a unit object
  425.    colour_map {
  426.       [0.00 0.10 color red 0.60 green 0.30 blue 0.18
  427.       color red 0.60 green 0.30 blue 0.18 ]
  428.       [0.10 0.90 color red 0.60 green 0.30 blue 0.18
  429.       color red 0.30 green 0.15 blue 0.09 ]
  430.       [0.90 1 color red 0.30 green 0.15 blue 0.09
  431.       color red 0.30 green 0.15 blue 0.09  ]
  432.    }
  433. }
  434.  
  435. //   Doug Otwell woods
  436. //   Yellow pine, close grained
  437. //
  438. #declare Yellow_Pine = texture {
  439.    wood
  440.    turbulence 0.02
  441.    colour_map {
  442.       [0.000 0.222   colour red  0.808  green  0.671  blue  0.251  alpha  0.000
  443.       colour red  0.808  green  0.671  blue  0.251  alpha  0.000]
  444.       [0.222 0.342   colour red  0.808  green  0.671  blue  0.251  alpha  0.000
  445.       colour red  0.600  green  0.349  blue  0.043  alpha  0.000]
  446.       [0.342 0.393   colour red  0.600  green  0.349  blue  0.043  alpha  0.000
  447.       colour red  0.808  green  0.671  blue  0.251  alpha  0.000]
  448.       [0.393 0.709   colour red  0.808  green  0.671  blue  0.251  alpha  0.000
  449.       colour red  0.808  green  0.671  blue  0.251  alpha  0.000]
  450.       [0.709 0.821   colour red  0.808  green  0.671  blue  0.251  alpha  0.000
  451.       colour red  0.533  green  0.298  blue  0.027  alpha  0.000]
  452.       [0.821 1   colour red  0.533  green  0.298  blue  0.027  alpha  0.000
  453.       colour red  0.808  green  0.671  blue  0.251  alpha  0.000]
  454.    }
  455.    scale <0.1 0.1 0.1>
  456.    translate <10 0 0>
  457.  
  458. }
  459. // Yellow_Pine layer 2
  460. texture {
  461.    wood
  462.    turbulence 0.01
  463.    colour_map {
  464.       [0.000 0.120   colour red  1.000  green  1.000  blue  1.000  alpha  1.000
  465.       colour red  0.702  green  0.412  blue  0.118  alpha  0.608]
  466.       [0.120 0.231   colour red  0.702  green  0.412  blue  0.118  alpha  0.608
  467.       colour red  0.702  green  0.467  blue  0.118  alpha  0.608]
  468.       [0.231 0.496   colour red  0.702  green  0.467  blue  0.118  alpha  0.608
  469.       colour red  1.000  green  1.000  blue  1.000  alpha  1.000]
  470.       [0.496 0.701   colour red  1.000  green  1.000  blue  1.000  alpha  1.000
  471.       colour red  1.000  green  1.000  blue  1.000  alpha  1.000]
  472.       [0.701 0.829   colour red  1.000  green  1.000  blue  1.000  alpha  1.000
  473.       colour red  0.702  green  0.467  blue  0.118  alpha  0.608]
  474.       [0.829 1   colour red  0.702  green  0.467  blue  0.118  alpha  0.608
  475.       colour red  1.000  green  1.000  blue  1.000  alpha  1.000]
  476.    }
  477.    scale <0.5 0.5 0.5>
  478.    translate <10 0 0>
  479. }
  480.  
  481. //
  482. //   Rosewood
  483. //
  484. #declare Rosewood = texture {
  485.    bozo
  486.    turbulence 0.04
  487.    colour_map {
  488.       [0.000 0.256   colour red  0.204  green  0.110  blue  0.078  alpha  0.000
  489.       colour red  0.231  green  0.125  blue  0.090  alpha  0.000]
  490.       [0.256 0.393   colour red  0.231  green  0.125  blue  0.090  alpha  0.000
  491.       colour red  0.247  green  0.133  blue  0.090  alpha  0.000]
  492.       [0.393 0.581   colour red  0.247  green  0.133  blue  0.090  alpha  0.000
  493.       colour red  0.204  green  0.110  blue  0.075  alpha  0.000]
  494.       [0.581 0.726   colour red  0.204  green  0.110  blue  0.075  alpha  0.000
  495.       colour red  0.259  green  0.122  blue  0.102  alpha  0.000]
  496.       [0.726 0.983   colour red  0.259  green  0.122  blue  0.102  alpha  0.000
  497.       colour red  0.231  green  0.125  blue  0.086  alpha  0.000]
  498.       [0.983 1   colour red  0.231  green  0.125  blue  0.086  alpha  0.000
  499.       colour red  0.204  green  0.110  blue  0.078  alpha  0.000]
  500.    }
  501.    scale <0.5 0.5 1>
  502.    translate <10 0 0>
  503.    ambient 0.5
  504.    diffuse 0.8
  505. }
  506. // Rosewood layer 2
  507. texture {
  508.    wood
  509.    turbulence 0.04
  510.    colour_map {
  511.       [0.000 0.139   colour red  0.545  green  0.349  blue  0.247  alpha  1.000
  512.       colour red  0.000  green  0.000  blue  0.000  alpha  0.004]
  513.       [0.139 0.148   colour red  0.000  green  0.000  blue  0.000  alpha  0.004
  514.       colour red  0.000  green  0.000  blue  0.000  alpha  0.004]
  515.       [0.148 0.287   colour red  0.000  green  0.000  blue  0.000  alpha  0.004
  516.       colour red  0.545  green  0.349  blue  0.247  alpha  1.000]
  517.       [0.287 0.443   colour red  0.545  green  0.349  blue  0.247  alpha  1.000
  518.       colour red  0.545  green  0.349  blue  0.247  alpha  1.000]
  519.       [0.443 0.626   colour red  0.545  green  0.349  blue  0.247  alpha  1.000
  520.       colour red  0.000  green  0.000  blue  0.000  alpha  0.004]
  521.       [0.626 0.635   colour red  0.000  green  0.000  blue  0.000  alpha  0.004
  522.       colour red  0.000  green  0.000  blue  0.000  alpha  0.004]
  523.       [0.635 0.843   colour red  0.000  green  0.000  blue  0.000  alpha  0.004
  524.       colour red  0.545  green  0.349  blue  0.247  alpha  1.000]
  525.       [0.843 1   colour red  0.545  green  0.349  blue  0.247  alpha  1.000
  526.       colour red  0.545  green  0.349  blue  0.247  alpha  1.000]
  527.    }
  528.    scale <0.5 0.5 1>
  529.    translate <10 0 0>
  530.    ambient 0.5
  531.    diffuse 0.8
  532. }
  533.  
  534. //
  535. //   Sandalwood ( makes a great burled maple, too)
  536. //
  537. #declare Sandalwood = texture {
  538.    bozo
  539.    turbulence 0.2
  540.    colour_map {
  541.       [0.000 0.171   colour red  0.725  green  0.659  blue  0.455  alpha  0.000
  542.       colour red  0.682  green  0.549  blue  0.420  alpha  0.000]
  543.       [0.171 0.274   colour red  0.682  green  0.549  blue  0.420  alpha  0.000
  544.       colour red  0.557  green  0.451  blue  0.322  alpha  0.000]
  545.       [0.274 0.393   colour red  0.557  green  0.451  blue  0.322  alpha  0.000
  546.       colour red  0.725  green  0.659  blue  0.455  alpha  0.000]
  547.       [0.393 0.564   colour red  0.725  green  0.659  blue  0.455  alpha  0.000
  548.       colour red  0.682  green  0.549  blue  0.420  alpha  0.000]
  549.       [0.564 0.701   colour red  0.682  green  0.549  blue  0.420  alpha  0.000
  550.       colour red  0.482  green  0.392  blue  0.278  alpha  0.000]
  551.       [0.701 1   colour red  0.482  green  0.392  blue  0.278  alpha  0.000
  552.       colour red  0.725  green  0.659  blue  0.455  alpha  0.000]
  553.    }
  554.    scale <0.2 0.2 1>
  555.    scale <2 2 2>
  556. }
  557. // Sandalwood layer 2
  558. texture {
  559.    bozo
  560.    turbulence 0.8
  561.    colour_map {
  562.       [0.000 0.087   colour red  0.682  green  0.604  blue  0.380  alpha  1.000
  563.       colour red  0.761  green  0.694  blue  0.600  alpha  0.020]
  564.       [0.087 0.226   colour red  0.761  green  0.694  blue  0.600  alpha  0.020
  565.       colour red  0.635  green  0.553  blue  0.325  alpha  1.000]
  566.       [0.226 0.348   colour red  0.635  green  0.553  blue  0.325  alpha  1.000
  567.       colour red  0.761  green  0.694  blue  0.600  alpha  0.020]
  568.       [0.348 0.496   colour red  0.761  green  0.694  blue  0.600  alpha  0.020
  569.       colour red  0.682  green  0.604  blue  0.380  alpha  1.000]
  570.       [0.496 0.565   colour red  0.682  green  0.604  blue  0.380  alpha  1.000
  571.       colour red  0.761  green  0.694  blue  0.600  alpha  0.020]
  572.       [0.565 0.661   colour red  0.761  green  0.694  blue  0.600  alpha  0.020
  573.       colour red  0.682  green  0.604  blue  0.380  alpha  1.000]
  574.       [0.661 0.835   colour red  0.682  green  0.604  blue  0.380  alpha  1.000
  575.       colour red  0.761  green  0.694  blue  0.600  alpha  0.020]
  576.       [0.835 1   colour red  0.761  green  0.694  blue  0.600  alpha  0.020
  577.       colour red  0.682  green  0.604  blue  0.380  alpha  1.000]
  578.    }
  579.    scale <0.2 0.2 2.0>
  580.    scale <2 2 2>
  581. }
  582.  
  583.  
  584. //*****************************************************************************
  585. //                     SURFACE TEXTURES
  586. //*****************************************************************************
  587.  
  588.  
  589. // Dull creates a large, soft highlight on the object's surface
  590. #declare Dull = texture { specular 0.5 roughness 0.15   }
  591.  
  592.  
  593. // Shiny creates a small, tight highlight on the object's surface
  594. #declare Shiny = texture { specular 1.0 roughness 0.001 }
  595.  
  596. // Phong highlights are less "realistic" than specular, but useful
  597. // for different effects.
  598. // Dull creates a large, soft highlight on the object's surface
  599. #declare Phong_Dull = texture { phong 0.5  phong_size 1 }
  600.  
  601.  
  602. // Shiny creates a small, tight highlight on the object's surface
  603. #declare Phong_Shiny = texture { phong 1.0  phong_size 200 }
  604.  
  605. // Very shiny with very tight highlights and a fair amount of reflection
  606. #declare Glossy = texture { specular 1.0 roughness 0.001 reflection 0.13}
  607. #declare Phong_Glossy = texture {phong 1 phong_size 300 reflection 0.13}
  608.  
  609.  
  610. // Luminous for shadowless skies and light_sources.
  611. #declare Luminous = texture { ambient 1.0  diffuse 0.0 }
  612.  
  613. // a perfectly mirrored texture with no highlights
  614. #declare Mirror = texture {
  615.    ambient 0.0
  616.    diffuse 0.0
  617.    reflection 1.0
  618. }
  619.  
  620. #declare Glass = texture {
  621.    Shiny
  622.    color red 1.0 green 1.0 blue 1.0  alpha 0.7
  623.    ambient 0.0
  624.    diffuse 0.0
  625.    reflection 0.1
  626.    refraction 1.0
  627.    ior 1.5
  628. }
  629.  
  630. // Probably more of a "Plexiglas" than glass
  631. #declare Glass2 = texture {
  632.    color red 1.0 green 1.0 blue 1.0 alpha 1.0
  633.    ambient 0.0
  634.    diffuse 0.0
  635.    reflection 0.5
  636.    refraction 0.85
  637.    ior 1.5
  638.    phong 0.3
  639.    phong_size 60
  640. }
  641.  
  642. // An excellent lead crystal glass!
  643. #declare Glass3 = texture {
  644.    color red 0.98 green 0.98 blue 0.98 alpha 0.9
  645.    ambient 0.1
  646.    diffuse 0.1
  647.    specular 0.8
  648.    reflection 0.1
  649.    refraction 0.9
  650.    ior 1.45
  651.    roughness 0.001
  652.    phong 1 phong_size 400
  653. }
  654.  
  655. #declare Green_Glass = texture {
  656.    Glass3
  657.    color red 0.8 green 1 blue 0.95 alpha 0.9
  658. }
  659.  
  660. //*****************************************************************************
  661. //                           METAL TEXTURES
  662. //*****************************************************************************
  663.  
  664.  
  665. // Good looking "metal" textures 
  666. // IMPORTANT: They REQUIRE that colors.inc be included BEFORE textures.inc!
  667. #declare Chrome_Texture = texture {
  668.    ambient 0.3
  669.    diffuse 0.7
  670.    reflection 0.15
  671.    brilliance 8.0
  672.    specular 0.8
  673.    roughness 0.1
  674.    color LightGray
  675. }
  676.  
  677. // You need to specify a color when Metal is used
  678. #declare Metal = texture {
  679.    metallic
  680.    ambient 0.2
  681.    diffuse 0.7
  682.    brilliance 6.0
  683.    reflection 0.25
  684.    phong 0.75
  685.    phong_size 80
  686. }
  687.  
  688. // A series of metallic textures using the Metal texture:
  689. #declare Brass_Texture   = texture {  Metal  colour Brass      }
  690. #declare Gold_Texture    = texture {  Metal  colour BrightGold }
  691. #declare Bronze_Texture  = texture {  Metal  colour Bronze     }
  692. #declare Copper_Texture  = texture {  Metal  colour Copper     }
  693. #declare Silver_Texture  = texture {  Metal  color Silver      }
  694.  
  695. // In the future, please refer to Chrome_Texture by this name.  I'd like
  696. // to scrap the old name someday. Ditto with other "_Texture" names!
  697. #declare Chrome_Metal = texture { Chrome_Texture  }
  698. #declare Brass_Metal  = texture { Brass_Texture   }
  699. #declare Gold_Metal   = texture { Gold_Texture    }
  700. #declare Bronze_Metal = texture { Bronze_Texture  }
  701. #declare Copper_Metal = texture { Copper_Texture  }
  702. #declare Silver_Metal  = texture {  Metal  color Silver      }
  703.  
  704. // Interesting texture -- Give it a try.
  705. // Sort of a "Black Hills Gold", black, white, and orange specks or splotches.
  706. #declare Brass_Valley = texture {
  707.    granite
  708.    metallic
  709.    brilliance 6.0
  710.    reflection 0.75
  711.    phong 0.75
  712.    color_map {
  713.       [0.0 0.3   color Feldspar  color Feldspar]
  714.       [0.3 0.6   color Mica      color Quartz]
  715.       [0.6 1 color Feldspar  color Quartz]
  716.    }
  717. }
  718.  
  719. #declare Rusty_Iron = texture {
  720.    agate
  721.    colour_map {
  722.       [0.0 0.5   colour red 0.21 green 0.1 blue 0.1
  723.       colour red 0.25 green 0.25 blue 0.01]
  724.       [0.5 0.6   colour red 0.25 green 0.25 blue 0.01
  725.       colour red 0.3 green 0.1 blue 0.1]
  726.       [0.6 1 colour red 0.15 green 0.1 blue 0.1
  727.       colour red 0.15 green 0.1 blue 0.1]
  728.    }
  729. }
  730.  
  731. #declare Rust  = texture {
  732.    spotted
  733.    colour_map {
  734.       [0.0 0.4   colour red 0.89 green 0.51 blue 0.28
  735.       colour red 0.70 green 0.13 blue 0.00]
  736.       [0.4 0.5   colour red 0.70 green 0.13 blue 0.00
  737.       colour red 0.69 green 0.41 blue 0.08]
  738.       [0.5 0.6   colour red 0.69 green 0.41 blue 0.08
  739.       colour red 0.49 green 0.31 blue 0.28]
  740.       [0.6 1 colour red 0.49 green 0.31 blue 0.28
  741.       colour red 0.89 green 0.51 blue 0.28]
  742.    }
  743. }
  744.  
  745.  
  746. //*****************************************************************************
  747. //                    SPECIAL EFFECTS
  748. //*****************************************************************************
  749.  
  750. // Red & white stripes - Looks best on a y axis Cylinder
  751. // It "spirals" because it's gradient on two axis
  752. #declare Candy_Cane = texture {
  753.    gradient < 1.0 1.0 0.0 > 
  754.    colour_map {
  755.       [0.00 0.25  colour red 1.0 green 0.0 blue 0.0
  756.       colour red 1.0 green 0.0 blue 0.0]
  757.       [0.25 0.75  colour red 1.0 green 1.0 blue 1.0
  758.       colour red 1.0 green 1.0 blue 1.0]
  759.       [0.75 1 colour red 1.0 green 0.0 blue 0.0
  760.       colour red 1.0 green 0.0 blue 0.0]
  761.    }
  762. }
  763.  
  764. // Orange and Clear stripes spiral around the texture
  765. // to make an object look like it was "Peeled"
  766. // Now, you too can be M.C. Escher 
  767. #declare Peel = texture {
  768.    gradient < 1.0 1.0 0.0 > 
  769.    colour_map {
  770.       [0.00 0.25  colour Orange
  771.       colour Orange]
  772.       [0.25 0.75  colour Clear
  773.       colour Clear]
  774.       [0.75 1.001 colour Orange
  775.       colour Orange]
  776.    }
  777. }
  778.  
  779. #declare Y_Gradient = texture {
  780.    gradient < 0.0 1.0 0.0 >
  781.    colour_map {
  782.       [0.00 0.33  colour red 1.0 green 0.0 blue 0.0
  783.       colour red 0.0 green 0.0 blue 1.0]
  784.       [0.33 0.66  colour red 0.0 green 0.0 blue 1.0
  785.       colour red 0.0 green 1.0 blue 0.0]
  786.       [0.66 1 colour red 0.0 green 1.0 blue 0.0
  787.       colour red 1.0 green 0.0 blue 0.0]
  788.    }
  789. }
  790.  
  791. #declare X_Gradient = texture {
  792.    gradient < 1.0 0.0 0.0 >
  793.    colour_map {
  794.       [0.00 0.33  colour red 1.0 green 0.0 blue 0.0
  795.       colour red 0.0 green 0.0 blue 1.0]
  796.       [0.33 0.66  colour red 0.0 green 0.0 blue 1.0
  797.       colour red 1.0 green 1.0 blue 1.0]
  798.       [0.66 1 colour red 1.0 green 1.0 blue 1.0
  799.       colour red 1.0 green 1.0 blue 1.0]
  800.    }
  801. }
  802.  
  803. // A good wavy water example.
  804. // Requires a sub-plane, and may require scaling to fit your scene.
  805. #declare Water = texture {
  806.    colour Blue alpha 0.9
  807.    ripples 0.75
  808.    frequency 10.0
  809.    reflection 0.3
  810.    refraction 0.5
  811.    ior 1.33
  812. }
  813.  
  814. #declare Cork = texture {
  815.    granite
  816.    colour_map {
  817.       [0.0 0.6  colour red 0.93 green 0.71 blue 0.532
  818.       colour red 0.98 green 0.81 blue 0.60]
  819.       [0.6 0.65 colour red 0.50 green 0.30 blue 0.20
  820.       colour red 0.50 green 0.30 blue 0.20]
  821.       [0.65 1.0 colour red 0.80 green 0.53 blue 0.46
  822.       colour red 0.85 green 0.75 blue 0.35]
  823.    }
  824.    scale <0.25 0.25 0.25>     // Generally looks best scaled
  825.    // longer on one axis
  826.    specular 0.1 roughness 0.5 // Very dull 
  827. }
  828.