// File rt_matllib.txt   Local material library for POV-Ray properties
// ===================================================================
//
// This file contains some simple POV-Ray material definitions to get you started,
// and also includes some standard files which come with the POV-Ray distribution
// which you will find useful. By default this file will be located in
//
// $OA_INSTALL/common_library/rt_matlib.txt
//
// It is recommended that you make your own private copy, stored in your own
// disk area, and use this for experiment. You can make D3PLOT file this local
// copy by using the preference:
//
//  d3plot*povray_matlib_file:  <filename>
//
// (Using the file filter in the Images, Ray-tracing panel to locate this file
//  and then using 'Save settings to oa_pref file" will do this automatically
//  for you.)
//

// Standard include files.
// =======================
//
// These are supplied as part of the standard POV-Ray download bundle.   
//
// On a Windows machine they are normally installed in the folder:
//
//  %USERPROFILE%documents    typically C:\users\<your name>\documents.
//
// On a Linux machine they will be in the /include directory of the POV-Ray
// install directory.   
//
// POV-Ray will "know" where it has installed them and will find them, and
// the pathname information  is given above to make it easier for you to
// find them and use them as the source of examples.
//
// We adopt the naming convention:
//
// P_xxx    is a pigment
// F_xxx    is a finish
// T_xxx    is a texture


#include "colors.inc"
#include "textures.inc"
#include "glass.inc"
#include "metals.inc"
#include "golds.inc"
#include "stones.inc"
#include "woods.inc"

#include "shapes.inc"
#include "shapes2.inc"
#include "functions.inc"
#include "math.inc"
#include "transforms.inc"


// These steels rely on the Finish definitions in the standard file "metals.inc",
// so they must follow that in the file include sequence.

#declare P_Black_Steel = color rgb <0.00, 0.00, 0.00>;
#declare P_Dark_Steel  = color rgb <0.30, 0.30, 0.30>;
#declare P_Med_Steel   = color rgb <0.50, 0.50, 0.50>;
#declare P_Light_Steel = color rgb <0.70, 0.70, 0.70>;


// Steel textures

#declare T_Black_Dull_Steel  = texture { pigment { P_Black_Steel } finish { F_MetalA  } }
#declare T_Black_Med_Steel   = texture { pigment { P_Black_Steel } finish { F_MetalC  } }
#declare T_Black_Shiny_Steel = texture { pigment { P_Black_Steel } finish { F_MetalE  } }

#declare T_Dark_Dull_Steel  = texture { pigment { P_Dark_Steel } finish { F_MetalA  } }
#declare T_Dark_Med_Steel   = texture { pigment { P_Dark_Steel } finish { F_MetalC  } }
#declare T_Dark_Shiny_Steel = texture { pigment { P_Dark_Steel } finish { F_MetalE  } }

#declare T_Med_Dull_Steel  = texture { pigment { P_Med_Steel } finish { F_MetalA  } }
#declare T_Med_Med_Steel   = texture { pigment { P_Med_Steel } finish { F_MetalC  } }
#declare T_Med_Shiny_Steel = texture { pigment { P_Med_Steel } finish { F_MetalE  } }

#declare T_Light_Dull_Steel  = texture { pigment { P_Light_Steel } finish { F_MetalA  } }
#declare T_Light_Med_Steel   = texture { pigment { P_Light_Steel } finish { F_MetalC  } }
#declare T_Light_Shiny_Steel = texture { pigment { P_Light_Steel } finish { F_MetalE  } }



// Rubber textures

#declare T_Black_Rubber = texture { pigment { color rgb <0.0, 0.0, 0.0> } finish { ambient 0.1 diffuse 0.1 roughness 1/20 reflection 0.0} }
#declare T_Grey_Rubber  = texture { pigment { color rgb <0.2, 0.2, 0.2> } finish { ambient 0.1 diffuse 0.1 roughness 1/20 reflection 0.0} }



// Glass textures

#declare T_Glass_Clear   = texture { pigment { color rgbt <1.0, 1.0, 1.0, 0.9> } finish { F_Glass6 } }
#declare T_Glass_General = texture { pigment { color rgbt <1.0, 1.0, 1.0, 0.7> } finish { F_Glass6 } }
