Extensions:2.6/Py/Scripts/Render/POV-Ray/Sample Materials

提供: wiki
< Extensions:2.6‎ | Py‎ | Scripts‎ | Render‎ | POV-Ray
移動先: 案内検索

目次

SAMPLE MATERIALS

All material code below is released under a simple BSD type license, so you can use it in your commercial work without any obligation. Most are built over bits of wisdom gathered from the POV-Ray community and further tweaked by the POV-Ray 3.7 exporter for Blender 2.5 users.

List of contributors:

Christian Böhme, Maurice Raybaud,

Add yourself here after adding a material.


ARCHITECTURE & DESIGN

Travertine

TravertineMaterialSample.png

show pov code

#declare Travertine =
texture {
pigment
 {marble
  turbulence 0.5
  color_map
   {[0.000, 0.053   color rgbt <0.784, 0.627, 0.522, 0.000>
                    color rgbt <0.784, 0.627, 0.624, 0.000>]
    [0.053, 0.263   color rgbt <0.784, 0.627, 0.624, 0.000>
                    color rgbt <0.824, 0.557, 0.376, 0.000>]
    [0.263, 0.281   color rgbt <0.824, 0.557, 0.376, 0.000>
                    color rgbt <0.643, 0.380, 0.376, 0.000>]
    [0.281, 0.325   color rgbt <0.643, 0.380, 0.376, 0.000>
                    color rgbt <0.839, 0.722, 0.722, 0.000>]
    [0.325, 0.711   color rgbt <0.839, 0.722, 0.722, 0.000>
                    color rgbt <0.784, 0.627, 0.522, 0.000>]
    [0.711, 0.798   color rgbt <0.784, 0.627, 0.522, 0.000>
                    color rgbt <0.769, 0.380, 0.376, 0.000>]
    [0.798, 0.895   color rgbt <0.769, 0.380, 0.376, 0.000>
                    color rgbt <0.824, 0.557, 0.376, 0.000>]
    [0.895, 0.982   color rgbt <0.824, 0.557, 0.376, 0.000>
                    color rgbt <0.784, 0.627, 0.522, 0.000>]
    [0.982, 1.001   color rgbt <0.784, 0.627, 0.522, 0.000>
                    color rgbt <0.784, 0.627, 0.522, 0.000>]
   }
 }
scale <1, 1, 2> rotate <40, 0, 0> rotate <0, 0, 30>}

texture {
pigment
 {granite
  turbulence 0.5
  color_map
   {[0.000, 0.053   color rgbt <0.784, 0.627, 0.522, 0.500>
                    color rgbt <0.784, 0.627, 0.624, 0.500>]
    [0.053, 0.263   color rgbt <0.784, 0.627, 0.624, 0.500>
                    color rgbt <0.824, 0.557, 0.376, 0.500>]
    [0.263, 0.281   color rgbt <0.824, 0.557, 0.376, 0.500>
                    color rgbt <0.643, 0.380, 0.376, 0.500>]
    [0.281, 0.325   color rgbt <0.643, 0.380, 0.376, 0.500>
                    color rgbt <0.839, 0.722, 0.722, 0.500>]
    [0.325, 0.711   color rgbt <0.839, 0.722, 0.722, 0.500>
                    color rgbt <0.784, 0.627, 0.522, 0.500>]
    [0.711, 0.798   color rgbt <0.784, 0.627, 0.522, 0.500>
                    color rgbt <0.769, 0.380, 0.376, 0.500>]
    [0.798, 0.895   color rgbt <0.769, 0.380, 0.376, 0.500>
                    color rgbt <0.824, 0.557, 0.376, 0.500>]
    [0.895, 0.982   color rgbt <0.824, 0.557, 0.376, 0.500>
                    color rgbt <0.784, 0.627, 0.522, 0.500>]
    [0.982, 1.001   color rgbt <0.784, 0.627, 0.522, 0.500>
                    color rgbt <0.784, 0.627, 0.522, 0.500>]
   }
 }
scale <2, 1, 2> rotate <40, 0, 0> rotate <0, 0, 30>}

texture {
pigment
 {marble
  turbulence 2.85
  color_map
   {[0.0, 0.05 color rgb 0 transmit 0.6 color rgb 0 transmit 1.0]
    [0.05, 0.97 color rgb <0.55, 0.09, 0.09> transmit 0.80 color rgb <0.329412, 0.329412, 0.329412> transmit 0.90]
    [0.97, 1.001 color rgb 0 transmit 0.9 color rgb 0 transmit 1.0]
   }
 }
scale <1, 2, 1.5> rotate <0, 0, 40>}

texture{pigment{color rgb <1,1,0> transmit 0.9} // Main tint
        normal {marble -0.025 turbulence 2.85 scale <1, 2, 1.5> rotate <0, 0, 40>}
        finish{phong 0.3 phong_size 20}  
}

texture{ 
    pigment{ 
        brick color rgb 0.6  // color mortar
        color rgbt< 0.75, 0.5, 0.30, 1>  // Fully transparent brick color 
        brick_size <25, 5.25, 12.5> 
        // (cm) format in x ,y and z- POV coordinates (xzy Blender direction) 
        mortar 0.01                      // (cm)size of the mortar 
        scale 1
    } // end of pigment
    finish {ambient 0 diffuse 0.95 phong 0.3 phong_size 30} 
    rotate<-90,0,0>  
    //Rotate to better suit Blender Coordinates
} // end of texture


Alpine Green (Verde Alpi) Marble

AlpineMarbleMaterialSample.png

show pov code

#declare AlpineMarble =
  texture {
    pigment {
      granite
      turbulence 0.7
      color_map {
        [ 0.000, 0.490  color rgbf < 0.16, 0.36, 0.20, 0.025 >
                   color rgbf < 0.00, 0.00, 0.05, 0.05 > ]
        [ 0.490, 0.500  color rgbf < 1.00, 1.00, 1.00, 1.00 >
                   color rgbf < 1.00, 1.00, 1.00, 1.00 > ]
        [ 0.500, 0.525  color rgbf < 0.00, 0.00, 0.00, 0.00 >
                   color rgbf < 0.00, 0.00, 0.00, 0.00 > ]
        [ 0.525, 0.900  color rgbf < 1.00, 1.00, 1.00, 1.00 >
                   color rgbf < 1.00, 1.00, 1.00, 1.00 > ]
        [ 0.900, 0.905  color rgbf < 0.40, 0.90, 0.44, 0.00 >
                   color rgbf < 0.9, 1.00, 0.95, 0.00 > ]
        [ 0.905, 1.000  color rgbf < 0.9, 1.00, 0.95, 1.00 >
                   color rgbf < 1.00, 1.00, 1.00, 1.00 > ]
      }
		scale 10
    }
    finish { 	  
	  diffuse albedo 0.85
      specular .5
      roughness .5 }
    normal { 
	  agate 0.85 
	  turbulence 2
	  scale 7 }
  }


Ancient Greek (Tinos) Marble

TinosMarbleMaterialSample.png

dark marble, with a mix of dark green, white and black fragmented marks, looking like a sort of 'terrazzo'

show pov code

#declare TinosMarble=
texture{
pigment{ crackle scale 5 turbulence 0.25
         form <-1,1,0.05>
         color_map { [0.00 color rgb<1,1,1>]
                     [0.025 color rgb<0.252,0.482,0.372>]
                     [0.05 color rgb<0.082,0.092,0.072>]
                     [0.15 color rgb<0.05,0.09,0.06>]
                     [0.52 color rgb<0.008,0.019,0.012>]  
                     [0.65 color rgb<0.0025,0.0029,0.0014>]                     
                     [0.75 color rgb<0.0060,0.0084,0.0065>]
                     [1.00 color rgb<0.008,0.012,0.012>]
                   }
	}
    finish{
	  diffuse albedo 0.8
      specular .5
      roughness .0001
      reflection { 
	0.2
      }
      brilliance 2
    }
  }


Golden Onyx

(to do)

Celadon

CeladonMaterialSample.png

Use with ior 1.5 and SSS at "subsurface {translucency <0.45, 0.38,0.33>*0.5}"

show pov code

#declare Celadon =
texture {
 pigment {
   bozo
   pigment_map {
     [0.0 color rgb <0.762025, 0.883775, 0.762025>]
     [0.2 color rgb <0.855688, 0.935979, 0.855688>]
     [0.5 color rgb <0.728519, 0.896481, 0.728519>]
     [0.8 color rgb <0.937467, 1.000000, 0.937467>]
     [1.0 color rgb <0.548054, 0.722746, 0.548054>]
   }
 }
 normal {
   crackle 0.5 solid
   warp {turbulence <0.1, 0.1, 0.1>}
   scale  0.1
 }
 finish {
   subsurface {translucency <0.45, 0.38,0.33>*0.5}
   diffuse 0.6
   specular 0.5
   roughness 0.005
   conserve_energy
   reflection {
     0.01 , 0.2
     fresnel  on
     falloff  1.0
     exponent 1.0
   }
 }
}

Bricks

BricksMaterialSample.png

show pov code

//Set up for a scale of 1cm / Blender Unit
#include "colors.inc" 
#declare Bricks =
texture{ 
    pigment{ 
        brick color rgb 0.4  // color mortar
        color rgb< 0.75, 0.5, 0.30>*0.5  // color brick
        brick_size <25, 5.25, 12.5> 
        // (cm) format in x ,y and z- POV coordinates (xzy Blender direction) 
        mortar 0.1                      // (cm)size of the mortar 
        scale 1
    } // end of pigment
    normal {wrinkles 0.75 scale 0.1}
    finish {ambient 0 diffuse 0.95 phong 0.2} 
    rotate<-90,0,0>  translate< 0.01, 0.00, 0.00> 
    //Rotate to better suit Blender Coordinates
} // end of texture


Brushed Aluminium

BrushedMetalMatSample.png

show pov code

#declare StripesDepth = 0.01;
#declare AluminiumBase = 
texture {
 
    pigment { rgb <0.658824, 0.658824, 0.658824> }
 
    normal {
        wood StripesDepth ramp_wave rotate 90*y scale 0.15
    } 
 
    finish {
        ambient 0
        diffuse 0.35
        specular 0.25
        roughness 0.1
        reflection {
        0.00 0.96        metallic 0.5 fresnel on     falloff 1 exponent 1.25} 
        brilliance 3.15
 
 
    }
}
 
 
 
#declare BrushedAluminium =
texture{
  average
  texture_map{
   #declare R=seed(1001);
   #declare V=0;
   #while(V<12)        // number of samples up to 256
    [1
     AluminiumBase
     normal{
      bumps StripesDepth
      scale <15, 15, 0.03>     
      translate <rand(R),rand(R),rand(R)>
     }
    ]
    #declare V=V+1;
   #end
  }
}


Roof Tiles

ClayRoofTilesMatSample.png

show pov code

#declare MedTileTex =
texture {
   pigment {
     average
     pigment_map{
     [0.25 cells
     color_map {//colours taken from roof images
       [0.1 srgb <220,158,106>/255]
       [0.2 srgb <217,177,126>/255]
       [0.3 srgb <228,215,173>/255]
       [0.4 srgb <219,152,100>/255]
       [0.5 srgb <166,120, 61>/255]
       [0.6 srgb <225,171,125>/255]
       [0.7 srgb <230,199,142>/255]
       [0.8 srgb <223,187,129>/255]
       [0.9 srgb <236,176,114>/255]
       [1.0 srgb <244,188,131>/255]
     }
     ]
     
     [0.4 aoi
     color_map {//colours taken from roof images
       [0.1 srgb <220,158,106>/255]
       [0.2 srgb <217,177,126>/255]
       [0.3 srgb <228,215,173>/255]
       [0.4 srgb <219,152,100>/255]
       [0.5 srgb <166,120, 61>/255]
       [0.6 srgb <225,171,125>/255]
       [0.7 srgb <230,199,142>/255]
       [0.8 srgb <223,187,129>/255]
       [0.9 srgb <236,176,114>/255]
       [1.0 srgb <244,188,131>/255]
     }
     ]

     [0.75 cells
     color_map {//colours taken from roof images
       [0.1 srgb <220,158,106>/255]
       [0.2 srgb <217,177,126>/255]
       [0.3 srgb <228,215,173>/255]
       [0.4 srgb <219,152,100>/255]
       [0.5 srgb <166,120, 61>/255]
       [0.6 srgb <225,171,125>/255]
       [0.7 srgb <230,199,142>/255]
       [0.8 srgb <223,187,129>/255]
       [0.9 srgb <236,176,114>/255]
       [1.0 srgb <244,188,131>/255]
     }
     ]
     }     
     scale <6, 2, 6>//TileScale
   }
   normal {
     average
     normal_map {
       [1 granite 1 scale 0.1]
       [1 cells 0.005]
     }
     scale <1, 2, 1>*1//TileScale
   }
   finish {
     specular 0.01 
     roughness 0.00286312
     diffuse albedo 0.65
     conserve_energy
   }
}

Roof Shingles

RoofTilesMatSample.png

show pov code

#declare tilesPattern = function(x,y,z){(y - int(y)) - (int(x)/2)};
//The box must be smaller than the textured object.
box{<-1,-1,-1>,<1,1,1>
rotate <45,0,0>

#declare RoofTiles =
texture {
pigment { 
    function {tilesPattern(x,y,z)} 
    pigment_map{[0 wood
                	turbulence 0.05
                	translate 4*z
                	warp { repeat 8*z offset 0.0 } 
                        rotate 86*z
                        scale 0.1
                	//rotate 4*z
                	pigment_map {
                	  [0.0 bozo
                            color_map {
                                [0.0 color rgb <0.35,0.3,0.2>]
                                [0.4 color rgb <0.3,0.3,0.25>]
                                [0.5 color rgb <0.48,0.4,0.35>]
                                [1.0 color rgb <0.48,0.4,0.35>]
                            }
                      ]
                      [0.3 bozo
                            color_map {
                                [0.0 color rgb <0.35,0.3,0.2>]
                                [0.4 color rgb <0.3,0.3,0.25>]
                                [0.5 color rgb <0.48,0.4,0.35>]
                                [1.0 color rgb <0.48,0.4,0.35>]
                            }
                      ]
                	  [0.7 color rgb <0.575,0.56,0.45>]
                	  [1.0 color rgb <0.575,0.56,0.45>]
                      }
                    ]
                [1 rgb <0,0,0>]
                }
               } 
    scale 2 translate <10,0,0>}
normal {
    function {tilesPattern(x,y,z)}
    scale 2 translate <10,0,0>}
finish {
    specular 0.1 
    roughness 0.5}
}


Chromed Steel

INOX

Silver

Gold

Copper

Bronze

Brass

BrassMaterialSample.png


Use with ior 1.18 and Irid Wavelength at RGB <0.996078,0.713726,0.34902>

show pov code

#include "functions.inc"
#declare brass=
texture {
 pigment {color srgb <254,182,89>/255}
 normal {
         average
         normal_map {
          [1      bumps
                                scale 0.0175
                                bump_size 0.2
                        ]
          [1      bumps
                                scale 0.35
                                bump_size 0.2
                        ]
          [1      function {(f_ridged_mf ((4+x)/0.3, y/0.3, z/0.3, 0.5, 2.7, 4,
1, 1.5, 0)-1.8)*0.5}
                         scale 0.35
                         bump_size 0.3
                         slope_map {
                          [0      <0,1>]
                          [0.25   <1,0>]
                          [1      <1,0>]
                         }
                        ]
         }
                accuracy 0.003
        }
 finish {
         ambient 0
         diffuse 0.16
         specular 0.8
         roughness 0.11
         metallic
         reflection {0.2, 0.4 metallic}
                irid {0.07 thickness 0.5 turbulence 0.2}
        }
}


Car Paint (plain / old)

CarPaintOldMatSample.png

show pov code

#include "colors.inc" 

#declare PaintColor = color White;

#declare PaintBright =

    pigment{
         PaintColor
        }

#declare PaintDark =

    pigment{
         PaintColor / 2
        }

#declare CarPaint = 
  texture{
    pigment{
         aoi
         pigment_map{
           //[0.0 PaintDark]
           [0.5 PaintDark]
           [1.0 PaintBright]
         }
        }
    normal {bozo 0.05 scale 0.1}
    finish{
         diffuse 0.65
         brilliance 0.6
         reflection{
                rgb <.05, .05, .05>, rgb<.2,.2,.2>
                fresnel on       
         }
    }
  }


Car Paint (Metallic / new)

CarPaintNewMatSample.png

show pov code

#include "colors.inc" 

#declare PaintColor = color SkyBlue;

#declare PaintBright =

    pigment{
         PaintColor
        }

#declare PaintDark =

    pigment{
         PaintColor / 10
        }

#declare CarPaint = 
  texture{
    pigment{
         aoi
         pigment_map{
           //[0.0 PaintDark]
           [0.5 PaintDark]
           [1.0 PaintBright]
         }
        }
    normal {bozo 0.05 scale 0.1}
    finish{
         specular 0.4
         roughness 0.05 
         metallic
         diffuse 0.25
         brilliance 1
         reflection{ 0.2   
         }
    }
  }


Car Paint (Tuning)

CarPaintTuningMatSample.png

show pov code

#include "colors.inc" 

#declare PaintColor = color SkyBlue;

#declare PaintBright =

    pigment{
         PaintColor
        }

#declare PaintDark =

    pigment{
         rgb <1-PaintColor.red, 1-PaintColor.green, 1-PaintColor.blue>
        }

#declare CarPaint = 
  texture{
    pigment{
         aoi
         pigment_map{
           //[0.0 PaintDark]
           [0.5 PaintDark]
           [1 PaintBright]
         }
        }
    normal {bozo 0.05 scale 0.1}
    finish{
         specular 0.4
         roughness 0.1
         metallic
         diffuse 0.25
         brilliance 2
         reflection{ 0.01 0.3   
         }
    }
  }


Rubber

RubberMatSample.png

show pov code

#declare Rubber =
  texture{
    pigment{
      aoi
      color_map{
	[0.00 rgb <.0075, .0175, .0025>]
	[0.55 rgb <.020, .022, .024>]
	[0.65 rgb <.004, .004, .004>]
	[0.85 rgb <.006, .002, .001>]
	[1.00 rgb <.007, .004, .001>]
    } 
    poly_wave 1.25
    scale 0.1
    }
    normal {bozo 0.2 scale 0.25}
    finish{
      specular .015
      roughness .075
      brilliance 0.275
    }
  }

Leather

LeatherMaterialSample.png
#declare Leather =
 
  texture{
    pigment{
      crackle
      metric 3
      turbulence .25
      color_map{
	[0.00 rgb <.015, .008, .004>]
	[0.25 rgb <.017, .008, .004>]
	[0.50 rgb <.010, .002, .004>]
	[0.75 rgb <.008, .002, .004>]
	[1.00 rgb <.006, .002, .003>]
      }
    scale 0.1
    }
    normal{
      crackle
      metric 3
      turbulence .25
      //granite .16
      scale 0.1
    }
    finish{
      specular .04
      roughness .1
    }
  }


Plastic matte

Plastic Shiny

Cardboard

Pine Wood

PineWoodMatSample.png

show pov code

#declare deskwood_streaks =
pigment {
  bozo
  color_map {
    [0.0 color rgb <0.6,0.35,0.1>]
    [0.6 color rgb <0.55,0.3,0.15>]
    [0.85 color rgb <0.6,0.5,0.5>]
    [1.0 color rgb <0.6,0.5,0.75>]
  }
  //scale <1,1,0.02>
  //scale <0.01,0.01,1>
  scale <1,0.01,1>
}
 
 
#declare deskwood_background =
pigment {
  //color rgb <0.68,0.6,0.45>
  color rgb <0.995,0.775,0.35>
}

#declare deskwood_background_bright =
pigment {
  //color rgb <0.68,0.6,0.45>
  color rgb <0.99,0.8,0.45>
}
 
#declare deskwood_turb =
    texture {
      pigment {
	wood
	turbulence 0.05
	translate 4*y
	warp { repeat 12*y offset 0.0 } 
        rotate 86*y
	//rotate 4*z
	translate <0,0,0>
	pigment_map {
	  [0.0 deskwood_streaks ]
	  [0.1 deskwood_streaks ]
	  [0.3 deskwood_background ]
	  [0.6 deskwood_background ]
	  [1.0 deskwood_background_bright ]
	}
      }
      finish { diffuse albedo 0.7 specular albedo 0.3 roughness 0.15 brilliance 0.5 }
    }
 
#declare deskwood_random_streaks =
    texture {
      pigment {
	bozo
      color_map {
	  [0.0 color rgbt <0.6,0.3,0.1,0.0>]
	  [0.3 color rgbt <0.6,0.3,0.1,0.0>]
	  [0.4 color rgbt <0.7,0.4,0.5,1.0>]
	  [1.0 color rgbt <0.7,0.4,0.5,1.0>]
	}
	//scale <4,1,0.1>
        scale <0.5,0.5,0.025>
      }
      finish { diffuse albedo 0.85 specular albedo 0.15 roughness 0.15 brilliance 0.5 }
		normal{
			bozo
			//scale <4,1,0.1>
	        scale <1,1,0.02>
      }
    }
 
#declare PineWood =
  texture { deskwood_turb translate <0,0,3> }
  texture { deskwood_random_streaks rotate 90*x }


Ash Wood

AshWoodMatSample.png

show pov code

#declare AshWood = 
texture {
    pigment {
        wood
        turbulence <0.05, 0.08, 1000>
        octaves 4
        scale <0.15, .15, 1>
        color_map { 
            [0.0, 0.1 color rgb <0.60, 0.35, 0.20>
                      color rgb <0.60, 0.35, 0.20>]
            [0.1, 0.9 color rgb <0.60, 0.35, 0.20>
                      color rgb <0.90, 0.65, 0.30>]
            [0.9, 1.0 color rgb <0.90, 0.65, 0.30>
                      color rgb <0.60, 0.35, 0.20>]
        }        
    }
	finish  {
		specular 0.3
		roughness 0.007
	}
	rotate x*90
	rotate y*9
	rotate z*3
	scale 500
	translate <7,5,4>
}

texture {
	pigment {
	    bozo
	    scale <0.01, 0.01, 100000>
		color_map { 
		    [0.0, 0.1 color rgbt <0.90, 0.65, 0.30, 0.00>
		              color rgbt <0.90, 0.65, 0.30, 0.30>]
		    [0.1, 1.0 color rgbt <0.90, 0.65, 0.30, 0.30>
		              color rgbt <1.00, 1.00, 1.00, 1.00> ] 
		}	
	}
}


Oak Wood

OakWoodMatSample.png

show pov code

#declare OakWood = 
    texture {
      pigment {
	wood
	turbulence 0.05
	translate 4*z
	warp { repeat 8*z offset 0.0 } 
        rotate 86*z
	//rotate 4*z
	pigment_map {
	  [0.0 bozo
            color_map {
                [0.0 color rgb <0.45,0.3,0.2>]
                [0.4 color rgb <0.4,0.3,0.25>]
                [0.5 color rgb <0.58,0.4,0.35>]
                [1.0 color rgb <0.58,0.4,0.35>]
            }
      ]
      [0.3 bozo
            color_map {
                [0.0 color rgb <0.45,0.3,0.2>]
                [0.4 color rgb <0.4,0.3,0.25>]
                [0.5 color rgb <0.58,0.4,0.35>]
                [1.0 color rgb <0.58,0.4,0.35>]
            }
      ]
	  [0.7 color rgb <0.775,0.56,0.45>]
	  [1.0 color rgb <0.775,0.56,0.45>]
	}
      }
      finish { diffuse 0.75 specular 0.05 roughness 0.025}
	translate <0,0,3>
	scale 0.5
	rotate 90*x 
    }

	//Second texture layer
    texture {
      pigment {
		bozo
	      color_map {
		  [0.0 color rgbt <0.5,0.3,0.2,0.0>]
		  [0.3 color rgbt <0.5,0.3,0.2,0.0>]
		  [0.4 color rgbt <0.8,0.6,0.6,1.0>]
		  [1.0 color rgbt <0.8,0.6,0.6,1.0>]
		  }
        scale <1,1,0.02>
		rotate 90*x 
      }
      normal {
		bozo
        scale <1,1,0.02>
		rotate 90*x 
      }
      finish { diffuse 0.8 specular 0.2 }
    }


Wood Planked floor

show pov code

#declare WoodPlanks =
    texture {
      pigment {
	wood
	turbulence 0.05
	translate 4*z
	warp { repeat 8*z offset 0.0 } 
        rotate 86*z
	//rotate 4*z
	pigment_map {
	  [0.0 bozo
            color_map {
                [0.0 color rgb <0.45,0.3,0.2>]
                [0.4 color rgb <0.4,0.3,0.25>]
                [0.5 color rgb <0.58,0.4,0.35>]
                [1.0 color rgb <0.58,0.4,0.35>]
            }
      ]
      [0.3 bozo
            color_map {
                [0.0 color rgb <0.45,0.3,0.2>]
                [0.4 color rgb <0.4,0.3,0.25>]
                [0.5 color rgb <0.58,0.4,0.35>]
                [1.0 color rgb <0.58,0.4,0.35>]
            }
      ]
	  [0.7 color rgb <0.475,0.3,0.25>]
	  [1.0 color rgb <0.475,0.3,0.25>]
	}
      }
      finish { diffuse 0.75 specular 0.05 roughness 0.025}
	translate <0,0,3>
	scale 0.5
	rotate 90*x 
    }
 
	//Second texture layer
    texture {
      pigment {
		bozo
	      color_map {
		  [0.0 color rgbt <0.5,0.3,0.2,0.0>]
		  [0.3 color rgbt <0.5,0.3,0.2,0.0>]
		  [0.4 color rgbt <0.8,0.6,0.6,1.0>]
		  [1.0 color rgbt <0.8,0.6,0.6,1.0>]
		  }
        scale <1,1,0.02>
		rotate 90*x 
      }
      normal {
		bozo
        scale <1,1,0.02>
		rotate 90*x 
      }
      finish { diffuse 0.8 specular 0.2 }
    }


texture{ 
    pigment{ 
        brick color rgb <0.45,0.3,0.250>  // color mortar
        color rgbt< 0.75, 0.5, 0.30, 1>  // color brick
        brick_size <250, 5.25, 12.5> 
        // (cm) format in x ,y and z- POV coordinates (xzy Blender direction) 
        mortar 0.01                      // (cm)size of the mortar 
        scale 1
    } // end of pigment
    normal {
        brick -0.15  // color mortar
        brick_size <250, 5.25, 12.5> 
        // (cm) format in x ,y and z- POV coordinates (xzy Blender direction) 
        mortar 0.01                      // (cm)size of the mortar 
        scale 1
    }
    finish {ambient 0 diffuse 0.95 phong 0.1 phong_size 30} 
    rotate<-90,0,0>  
    //Rotate to better suit Blender Coordinates
} // end of texture


Varnished wood matte

Varnished wood shiny

Carpet

Plaster

Glass Solid

Glass Window

Glass Brushed

Glass Foggy

Mirror

Sanitary Ceramic

Glycerophtalic paint

for metal like fridges, washing machine, etc.

Acrylic paint

for Walls, wood, etc.

LANDSCAPE

Sand

SandMaterialSample.png

show pov code

#declare Sand=
  texture{
    pigment{
      color rgb <.518, .339, .138>
    }
    normal{
      bumps 5
      scale 0.05
    }
    finish{
      specular .3
      roughness .8
    }
  }
 
  texture{
    pigment{
      wrinkles
      scale 0.05
      color_map{
	[0.0 color rgbt <1, .847, .644, 0>]
	[0.2 color rgbt <.658, .456, .270, 1>]
	[0.4 color rgbt <.270, .191, .067, .25>]
	[0.6 color rgbt <.947, .723, .468, 0>]
	[0.8 color rgbt <.356, .250, .047, 1>]
	[1.0 color rgbt <.171, .136, .1, 1>]
      }
    }
  }

Snow (Background)

SnowMaterialSample.png

show pov code

#declare Snow =
  texture{ 
    pigment{
      color rgb <0.9, 0.95, 1>
    }
    normal{
      gradient y .5
      slope_map {
	[0 <.1, .1>]
	[0.25 <.25, 0>] 
	[0.5 <.1, -.1>] 
	[0.75 <.25, 0>] 
	[1 <.1, .1>] 
      }
      turbulence 0.5
      scale 3
    }
    finish{
      brilliance 0.75
      phong 0.1
      phong_size 5
      subsurface {translucency <0.1, 0.31, 0.48>}
      //emission .2
      //use with  radiosity instead
    }
  }
 
  texture{
    pigment{
      color rgbt <1, 1, 1, .9>
    }
    normal{
      bumps 5
      scale .05  
    }
    finish{
      specular 1
      roughness .01
    }
  }
 
   texture{
    pigment{
      color rgbt <1, 1, 1, .9>
    }
    normal{
      bumps 3
      scale .1
    }
   }


Snow (Foreground)

SnowCloseUpMatSample.png

show pov code

#declare snowTex = texture {
pigment { rgb <1, 1, 1> }
finish { diffuse albedo 0.7 specular albedo 0.2 roughness 0.0002 brilliance 0.9
reflection { 0.005, 0.05 fresnel on } conserve_energy
subsurface { translucency <2.98, 2.97, 2.94> }
 }
normal { granite 2 scale 0.05 }
}

// iceTex
#declare iceTex1 = texture {
pigment { rgbf <1, 1, 1, 0.3> }
finish { diffuse albedo 0.1 specular albedo 0.1 roughness 0.05 brilliance 2.5
reflection { 0.005, 0.01 fresnel on } conserve_energy
subsurface { translucency <29.5,30,31> }
}
normal { granite 1 scale 0.1 }
}

#declare iceTex2 = texture {
pigment { rgbf <1, 1, 1, 0.1> }
finish { diffuse albedo 0.5 specular albedo 0.15 roughness 0.02 brilliance 1.2
reflection { 0.005, 0.03 fresnel on } conserve_energy
 subsurface { translucency <29.5,30,31> }
}
normal { granite 01.5 scale 0.08 }
}

/*
#declare Snowball=function {
   pigment {
      wrinkles
      scale 0.25
      turbulence 0.2
      lambda 0.5
      omega 0.75
      color_map {
          [0, rgb 0]
          [1, rgb 1]
       }
    }
 }
*/

#declare Snow = texture {
    aoi
    texture_map { 
        [ 0.0 iceTex1 scale 0.33 ]
        [ 0.45 iceTex2 scale 0.33 ]
        [0.75 snowTex scale 0.33] 
    } 
    scale 0.3 turbulence 0.275  translate <-1.7, 0, 0>
}


Ice (Iceberg)

Lava

JEWELRY

LapisLazuli

LapisLazuliMaterialSample.png

show pov code

#declare azul =
 texture{
    pigment{
      bozo
      scale .7
      turbulence 1
      color_map{
	[0.0 color rgbt <.053, .112, .371, 0>] 
	[.2 color rgbt <.045, .098, .361, 0>] 
	[.4 color rgbt <.009, .026, .238, 0>] 
	[1 color rgbt <.004, .007, .093, 0>] 	
      }
    }
    finish{
      specular .5
      roughness .0001
      reflection { 
	0.2
      }
      brilliance 2
    }
  }
  

#declare pyrit =
  texture{
    pigment{ 
      rgb <.723, .516, .0> 
    }
    normal{ 
      bumps .25 
      scale .001
    }
    finish{ 
      specular 1 
      roughness .0001
      reflection .9
    }
  }

#declare lapislazuli=
  texture{
      granite
      scale 1.5
      turbulence .5
      texture_map{
	[0.0 pyrit]
	[0.07 pyrit]
	[0.12 azul ]
	[1.0 azul ]
      }
  }


OTHER

Carbon fiber

CarbonFiberMaterialSample.png

show pov code

// --snip-- begin carbon.inc ----------------------
// carbon texture

#declare N_Carbon = normal {
  #local loc_sc = <.5,.5,1>;
  gradient x
  normal_map{
    [ 0.25
      gradient y
      normal_map {
        [ .25 gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .25 gradient x scallop_wave scale loc_sc ]
        [ .5  gradient x scallop_wave scale loc_sc ]
        [ .5  gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .75 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .75 gradient y scallop_wave scale loc_sc translate .25*y ]
      }
    ]
    [ 0.25
      gradient y
      normal_map {
        [ .25 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .25 gradient x scallop_wave scale loc_sc ]
        [ .5  gradient x scallop_wave scale loc_sc ]
        [ .5  gradient y scallop_wave scale loc_sc ]
        [ .75 gradient y scallop_wave scale loc_sc ]
        [ .75 gradient y scallop_wave scale loc_sc ]
      }
    ]
    [ 0.5
      gradient y
      normal_map {
        [ .25 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .25 gradient x scallop_wave scale loc_sc ]
        [ .5  gradient x scallop_wave scale loc_sc ]
        [ .5  gradient y scallop_wave scale loc_sc ]
        [ .75 gradient y scallop_wave scale loc_sc ]
        [ .75 gradient y scallop_wave scale loc_sc ]
      }
    ]
    [ 0.5
      gradient y
      normal_map {
        [ .25 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .25 gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .5  gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .5  gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .75 gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .75 gradient x scallop_wave scale loc_sc ]
      }
    ]
    [ 0.75
      gradient y
      normal_map {
        [ .25 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .25 gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .5  gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .5  gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .75 gradient y scallop_wave scale loc_sc translate .25*y ]
        [ .75 gradient x scallop_wave scale loc_sc ]
      }
    ]
    [ 0.75
      gradient y
      normal_map {
        [ .25 gradient y scallop_wave scale loc_sc ]
        [ .25 gradient y scallop_wave scale loc_sc ]
        [ .5  gradient y scallop_wave scale loc_sc ]
        [ .5  gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .75 gradient x scallop_wave scale loc_sc translate .25*x ]
        [ .75 gradient x scallop_wave scale loc_sc ]
      }
    ]
  }
}

#declare T_Carbon_A = texture {
  normal { N_Carbon }
  pigment{rgb 0.1}
  finish { diffuse albedo 0.17204 phong albedo .17204 phong_size 4 irid {0.1}}
}

#declare T_Carbon_B = texture {
  normal {bumps 0}
  pigment{rgb 0.1}
  finish {
	diffuse albedo 0.17204
    reflection { 0.17204 fresnel on } metallic conserve_energy
    phong albedo 0.17204 phong_size 60
	irid {0.1}
  }
}

#declare T_Carbon = texture {
    average
    texture_map {
      [5 T_Carbon_A ]
      [4 T_Carbon_B ]
    }
}


Cigaret Filter

CigaretFilterMatSample.png

show pov code

#declare cfilter =
  texture{
    pigment{
      color rgb <.610, .366, .141 >
    }
  }

  texture{
    pigment{
      granite
      scale 1.5
      rotate y*0
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }


  texture{
    pigment{
      granite
      scale 1.5
      rotate y*45
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }


  texture{
    pigment{
      granite
      scale 1.5
      rotate y*90
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }
  texture{
    pigment{
      granite
      scale 1.5
      rotate y*135
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }
  texture{
    pigment{
      granite
      scale 1.5
      rotate y*180
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }
  texture{
    pigment{
      granite
      scale 1.5
      rotate y*225
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }
  texture{
    pigment{
      granite
      scale 1.5
      rotate y*270
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }
  texture{
    pigment{
      granite
      scale 1.5
      rotate y*315
      color_map{
	[0.0 rgb <.671, .421, .049>]
	[0.12 rgbt <.958, .726, .375, 1>]
	[0.12 rgbt <1, 1, 1, 1> ]
	[1.0 rgbt <1, 1, 1, 1> ]
      }
    }
  }


ORGANIC

TO DO

Skin Light

SkinLightMaterialSample.png

show pov code

#declare Skin =
texture {
  pigment {
    //aoi for peach hair effect
    aoi
    color_map {
      [ 0.25 rgb <1.0,0.95,0.9>]
      [ 0.55 rgb <0.9,0.4,0.2>*0.75]
    }
  }
  normal {
  crackle 5
  form <1,0,0>
  scale 0.075
  }
  finish {
    phong 0.01
    phong_size 10
    specular 0.01
    roughness 0.5
    diffuse 0.6
    ambient 1
    subsurface { translucency <3.67, 1.37, 0.683> }
    conserve_energy
  }
}


Skin Dark

Hair

Teeth

'Nails

Eye White

EyeBallWhiteMatSample.png

show pov code

#declare EyeBallWhite =
texture {
pigment{ crackle scale 4 turbulence 0.25
         form <-1,1,0.05>
         color_map { [0.00 color rgb<0.4,0.2,0.1>]
                     [0.025 color rgb<0.952,0.282,0.372>]
                     [0.05 color rgb<0.992,0.982,0.982>]
                     [0.15 color rgb<0.99,0.95,0.86>]
                     [0.52 color rgb<0.99,0.99,0.99>]  
                     [0.65 color rgb<0.99,0.99,0.94>]                     
                     [0.75 color rgb<0.96,0.94,0.965>]
                     [1.00 color rgb<0.99,0.99,0.99>]
                   }
	}
	
  //pigment {
    //aoi for what effect
    //aoi
    //color_map {
      //[ 0.25 rgb <1.0,0.95,0.9>]
      //[ 0.55 rgb <0.9,0.4,0.2>*0.75]
    //}
  //}
normal { crackle -0.5 scale 4 turbulence 0.25
         form <-1,1,0.05>
	}
finish {
    brilliance 0.8
    phong albedo 0.5 phong_size 25.2
	specular albedo 0.5 roughness 0.2
    diffuse albedo 0.8
    ambient 1
    emission 0
	reflection {0.1 0.5 fresnel}
    conserve_energy
    subsurface { translucency <10.9, 6.57, 2.51> }
}
}

Eye Iris

show pov code

#declare P_Iris_Shadowed = pigment { color rgb 0 }

#declare P_Iris_Base = pigment {
   granite
   color_map {
     [ 0.0 color srgb <0.4,0.5,0.3> ] // <-- primary color
     [ 1.0 color srgb <0,0,0> ]
   }
   translate z
   scale 0.5
}

#declare P_Iris_A = pigment {
   P_Iris_Base
   scale 0.7
   warp { black_hole <0,0,0>, 1 strength 1 falloff 2 }
}

#declare P_Iris_B = pigment {
   granite
   pigment_map {
     [ 0.0 color srgb <0.7,0.7,0.3> ] // <-- secondary color
     [ 0.3 P_Iris_Base ]
   }
   scale 0.7
   warp { black_hole <0,0,0>, 1 strength 1 falloff 2 }
}

#declare M_Iris = material {
   texture {
     pigment {
       uv_mapping
       spherical
       pigment_map {
         [0.2  P_Iris_Shadowed]
         [0.3  P_Iris_A ]
         [0.4  P_Iris_A ]
         [0.5  P_Iris_B ]
         [0.6  P_Iris_B ]
         [0.65 P_Iris_Shadowed]
       }
       translate <1,1,0>
       warp { repeat 2*x }
       scale 0.25
     }
     finish { ambient 0 diffuse albedo 0.6 specular albedo 0 emission 0 }
   }
}


'Mouth Inside

FOOD & DRINKS

TO DO

Ice (ice cubes)

Milk

Orange

OrangeMaterialSample.png

show pov code

#declare Orange=
  texture{
    pigment{
      bozo
      color_map{
	[0.0 rgb <.686, .383, .024>]
	[0.5 rgb <.686, .228, .032>]
	[1.0 rgb <.828, .516, .031>]
      }
    scale 0.15
    }
    normal{
      granite .2
    }	
    finish{
      brilliance 1
      //emission .1
      //Use with Radiosity instead
      specular .15
      roughness .05
    }
  }


Banana

BananaMaterialSample.png

show pov code

#declare Skin=
 texture{
    pigment{
      gradient -y
      scale 1.5
      color_map{
	[0.0 color rgbt <.296, .283, .030, 0>] 
	[.2 color rgbt <.485, .337, .042, 0>] 
	[.4 color rgbt <.753, .503, .067, 0>] 
	[1 color rgbt <.386, .223, .005, 0>] 	
      }
    }
    normal{
	marble .2
	turbulence .3 
	scale <.01, .01, .01>
    }

    finish{
      specular .05
      roughness .2
    }
  }
  

#declare Dents =
  texture{
    pigment{ 
      rgb <.258, .091, .0> 
    }
  }

#declare BananaSkin =
	texture{
          granite
      	  scale 1.5
          //turbulence .5
      	  texture_map{
		[0.0 Dents]
		[0.07 Dents]
		[0.13 Skin]
		[1.0 Skin]
      	  }
	}


Apple

Peach

PeachMaterialSample.png

show pov code

#declare PeachSkin = 
      texture {
         average
         texture_map {
            [
               pigment {
                  bozo
                  color_map {
                      [0.25,color <0.482,0.325,0.325>]
                      [1,color <0.678,0.635,0.612>]
                  }
                  scale 0.001
               }
               normal {
                  average
                  normal_map {
                     [
                        bumps 0.3*2
                        warp {turbulence 1}
                        scale 0.2
                     ]
                     [
                        bumps 0.2*2
                        warp {turbulence 0.5}
                        scale 0.001
                     ]
                  }
               }
               finish {ambient 0 diffuse 0.3 brilliance 0.7}
            ]
            [
               pigment {color <0.950,0.420,0.420>}
               finish {ambient 0 diffuse 0 phong 0.6 phong_size 2 metallic}
               //Use Radiosity rather than ambiant value
            ]
         }
      }


CLOTH

Following the method explained by Tom Fine here: http://hea-www.harvard.edu/~fine/POV/fabric.html


Generic linen type threads could be mimicked by this code:

show pov code

camera
{
  orthographic
  up <0, 1, 0>
  right <1, 0, 0>
  location <0,40,0>
  look_at <0,0,0>
  angle 11
}

#include "colors.inc"

#declare threadthick=1.7;
#declare grad_h=4+threadthick*2;
#declare grad_off=grad_h/2;

#declare redpaint = texture { pigment { color rgb <1,0,0> } finish { ambient 0.5 } }
#declare heightgrad = texture {
  pigment {
    gradient y
    pigment_map {
      [0 color Black]
      [0.5 color Black]
      [1 color White]
    }
    scale grad_h*y translate grad_off*y
  }
  finish { ambient 1 }
}

background { color Black }

difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <-2,0,-2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,0,-5> <5,5,5> texture { redpaint } }
  translate <-2,0,-2>
  texture { heightgrad }
}

difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,0,-5> <5,5,5> texture { redpaint } }
  translate <-2,0,2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <-2,0,2>
  texture { heightgrad }
}

difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,0,-5> <5,5,5> texture { redpaint } }
  translate <2,0,-2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <2,0,-2>
  texture { heightgrad }
}

difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,0,-5> <5,5,5> texture { redpaint } }
  translate <2,0,2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <2,0,2>
  texture { heightgrad }
}

difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <-6,0,2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*x }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <6,0,-2>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <-2,0,-6>
  texture { heightgrad }
}
difference {
  torus { 2 threadthick rotate 90*z }
  box { <-5,-5,-5> <5,0,5> texture { redpaint } }
  translate <2,0,6>
  texture { heightgrad }
}


Linen

The above is then used as a bump map in this texture:

LinenMaterialSample.png

show pov code

//H_streaks and V_streaks are used to make natural looking fiber streaks
//for the fabric
//#declare H_streaks = pigment { bozo color_map { [0.0 color rgb <0.6,0.5,0.4>] [1.0 color rgb <0.8,0.7,0.6>] } scale <2,0.05,1> }
//#declare V_streaks = pigment { bozo color_map { [0.0 color rgb <0.6,0.5,0.4>] [1.0 color rgb <0.8,0.7,0.6>] } scale <0.05,2,1> }
#declare H_streaks = pigment { bozo color_map { [0.2 color rgb <0.4,0.3,0.2>] [0.8 color rgb <0.9,0.8,0.7>] } scale <10,0.1,1> }
#declare V_streaks = pigment { bozo color_map { [0.2 color rgb <0.4,0.3,0.2>] [0.8 color rgb <0.9,0.8,0.7>] } scale <0.1,10,1> }

//A fabric bump map is used to shade the surface (see fabricbumps.pov)
//Then, a checkerboard is overlayed using alternating patterns of H_streaks
//and V_streaks.  The checker pattern and the bump map
//are scaled together so that the streaks line up with the fiber bumps.
#declare fabric = texture {
  pigment { checker pigment { H_streaks } pigment { V_streaks } scale 0.5*0.17 }
  normal { bump_map { gif "../images/fabricbumps.gif" bump_size 10 } scale 0.17 }
  finish { diffuse 0.8 specular 0.2 }
}


Tartan

Tartan type pattern for quilt and plaids, etc.

TartanMaterialSample.png

show pov code

#declare Col1 = <1.0, 0.0, 0.0>;
#declare Col2 = <1.0, 0.0, 0.0>;

#declare Pig1 =
pigment {
   gradient x
   color_map {
     [0.190 srgb <0.0, 0.0, 0.0>]
     [0.190 srgb Col1]
     [0.233 srgb Col1]
     [0.233 srgb <0.0, 0.0, 0.0>]
     [0.304 srgb <0.0, 0.0, 0.0>]
     [0.304 srgb <1.0, 1.0, 1.0>]
     [0.325 srgb <1.0, 1.0, 1.0>]
     [0.325 srgb <0.0, 0.0, 0.0>]
     [0.396 srgb <0.0, 0.0, 0.0>]
     [0.396 srgb Col1]
     [0.441 srgb Col1]
     [0.441 srgb <0.0, 0.0, 0.0>]
     [0.625 srgb <0.0, 0.0, 0.0>]
     [0.625 srgb Col1]
   }
}

#declare Pig2 =
pigment {
   gradient x
   color_map {
     [0.190 srgb <0.0, 0.0, 0.0>]
     [0.190 srgb Col2]
     [0.233 srgb Col2]
     [0.233 srgb <0.0, 0.0, 0.0>]
     [0.304 srgb <0.0, 0.0, 0.0>]
     [0.304 srgb <1.0, 1.0, 1.0>]
     [0.325 srgb <1.0, 1.0, 1.0>]
     [0.325 srgb <0.0, 0.0, 0.0>]
     [0.396 srgb <0.0, 0.0, 0.0>]
     [0.396 srgb Col2]
     [0.441 srgb Col2]
     [0.441 srgb <0.0, 0.0, 0.0>]
     [0.625 srgb <0.0, 0.0, 0.0>]
     [0.625 srgb Col2]
   }
}

#declare Tartan =

texture {
 pigment_pattern {
   gradient <1.0, 1.0, 0.0>
   color_map {
     [0.0 srgb <0.0, 0.0, 0.0>]
     [0.5 srgb <0.0, 0.0, 0.0>]
     [0.9 srgb <1.0, 1.0, 1.0>]
     [1.0 srgb <1.0, 1.0, 1.0>]
   }
   scale  0.03
   rotate 45.0*y
 }
 texture_map {
   [0.0 pigment {Pig1}]
   [1.0 pigment {Pig2} rotate -90.0*y]
 }
}

TO DO

Jeans

Cotton

Tulle

Velvet

#declare Rug = 
      texture {
         average
         texture_map {
            [
               pigment {
                  bozo
                  color_map {
                      [0.25,color <0.325,0.325,0.325>]
                      [1,color <0.118,0.115,0.112>]
                  }
                  scale 0.001
               }
               normal {
                  average
                  normal_map {
                     [
                        bumps 0.3*2
                        warp {turbulence 1}
                        scale 1
                     ]
                     [
                        bumps 0.2*2
                        warp {turbulence 0.5}
                        scale 0.005
                     ]
                  }
               }
               finish {ambient 0 diffuse 0.3 brilliance 0.7}
            ]
            [
               pigment {color <0.950,0.420,0.420>}
               finish {ambient 0 diffuse 0 phong 0.6 phong_size 2 metallic}
               //Use Radiosity rather than ambiant value
            ]
         }
      }

Nylon

Silk

SilkMatSample.png

show pov code

#declare Silk =

      texture {
         pigment_pattern {
               wrinkles
               pigment_map {
                  [0.4
                     color rgb <1.0, 1.0, 1.0>
                  ]
                  [0.6
                     color rgb <0.0, 0.0, 0.0>
                  ]
               }
               scale  <0.2, 1.0, 0.2>
         }
         texture_map {
            [0.0
               pigment {
                  color rgb <0.45, 0.25, 0.75>
               }
               finish {
                  ambient 0.0
                  specular 0.8
               }
            ]
            [1.0
               pigment {
                  color rgb <0.45, 0.25, 0.75>
               }
               finish {
                  ambient 0.0
                  specular 0.05
               }
            ]
         }
      }

Satin

Wool

Towel