Descriptions and Examples for the POV-Ray Raytracer by Friedrich A. Lohmüller
Design of Surfaces by "texture" with POV-Ray -
Deutsch Deutsch
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  Design of Surfaces
  - Colors and Textures
    Index

    texture Syntax
    Ready-made Textures
    Do-it-yourself Colors
    Patterns
    - pattern types
      Regular patterns
    - checker, hexagon
      square, triangular
    - brick
    - object pattern (1)
    - object pattern (2)
    - object pattern (3)
    - tiling
    - pavement
      Stripes pattern
    - color_map{...}
      Patterns by pigments
    - pigment_pattern (1)
    - pigment_pattern (2)
    Patterns Lists
   > Regular Patterns
    - Random Patterns
    - Fractal Patterns
    - Other Patterns
    Warps
    - warp mapping
    uv_mapping
    Mapping
    Superpositions

    Your own Textures
 
                                           

Patterns for 'pigment' and 'normal'.

Simple Regular Pigment and Normal Patterns

Note: you can turblate all these patterns by "turbulence ..." or "warp( turbulence ...)" modifiers.

Name

Example

checker

pigment{ checker
         color rgb<1,1,1>
         color rgb<0,1,0>
       }                      

hexagon

pigment{ hexagon
         color rgb<0.5,1,0>
         color rgb<1,0.7,0>
         color rgb<0,0.5,0>
         rotate<90,0,0> }
sphere{ <0,0,0>,1
texture{
 pigment{ hexagon //a faked soccer ball
          color rgb<1,1,1>*1.0
          color rgb<1,1,1>*0.0
          color rgb<1,1,1>*0.5
          scale <0.115/pi,0.25/pi,0.075>*1.65
          warp { // see "warp mapping"
            spherical
            orientation <0,1,0>
          }// end warp
 scale 0.175  rotate<40,0,0> }
  } // end of texture
 scale 0.25 translate <0,0.25,0>
 } // end of sphere - turn it accordingly

square
New in
POV-Ray 3.7

pigment{ square // max. 4 colors / pigments
           // Color1, Color2, Color3, Color4

           color rgb<1.00, 1.00, 1.00>,//White
           color rgb<1.00, 0.00, 0.30>,//blueish red
           color rgb<0.10, 0.70, 0.00>,//YellowGreen
           color Orange
         // turbulence 0.5

           scale 0.25
         } // end pigment
pigment{ square // max. 4 colors / pigments
           // Pigment1, Pigment2, Pigment3, Pigment4

           pigment{ color rgb<1.00, 1.00, 1.00>} ,
           pigment{ color rgb<1.00, 0.30, 1>*0.5},
           pigment{ gradient<1,0,0>  scale 0.5
                    color_map{
                     [ 0.00 color rgb<0.10, 0.60, 0.00>]
                     [ 1.00 color rgb<1.00, 1.00, 0.00>]
                     } // end color_map
                  }, //
           pigment{ checker color Orange color Blue scale 0.25}
         // turbulence 0.5

           scale 0.25
         } // end pigment
texture { square // max. 4 non pattern textures
        texture{ pigment{ color rgb<0.95,0.80,0.45> }
                 normal { spotted 50 scale 0.150 }
                 finish { phong 1 phong_size 10 reflection 0.1}
               },
        texture{ pigment{ color rgb<1.00, 1.00, 1.00> }
                 normal{ waves frequency 5 scale<0.25,1,0.25>}
               },
        texture { Polished_Chrome
                  pigment{ color rgb<1,0.5,0>*1.5 }
                  normal { crackle 3.5 scale 0.40 }
                  finish { phong 1 }
               },
        texture{ pigment{ color rgb<1.00, 1.00, 1.00>}
                 normal{ waves frequency 5 scale<0.25,1,0.25>}
               },
          scale 0.25
      } // end texture

triangular
New in
POV-Ray 3.7

pigment{ triangular // max. 6 colors / pigments
           // Color1, Color2, Color3, Color4, Color5, Color6
            color Red,
            color rgb<1.0, 0.4, 0.0>,
            color rgb<1.0, 0.9, 0.0>,
            color rgb<0.5, 1.0, 0.0>,
            color rgb<0.5, 0.5, 1.0>,
            color rgb<0.5, 0.0, 1.0>,
            scale 0.35
         } // end pigment

cubic
New in
POV-Ray 3.7

pigment{ cubic // max. 6 colors / pigments
           // Color1, Color2, Color3, Color4, Color5, Color6
            color rgb<1.0, 0.0, 0.0>,
            color rgb<1.0, 0.4, 0.0>,
            color rgb<1.0, 0.9, 0.0>,
            color rgb<0.5, 1.0, 0.0>,
            color rgb<0.5, 0.5, 1.0>,
            color rgb<0.5, 0.0, 1.0>,
            translate<0,0,0>
         } // end pigment

brick

pigment{ brick
         color rgb<0.8,0.25,0.1> // brick color
         color rgb<0.5,0.5,0.5> // mortar color
         <0.25,0.0525,0.125>// size of brick
         0.01 // width of mortar
       } //---- end of pigment ------

boxed

pigment{ boxed frequency 15 turbulence 0
         color_map{[0.0 color rgb <0,0,0>]
                   [0.7 color rgb <1,0,0>]
                   [1.0 color rgb <1,1,1>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <1,1,1>}
normal { boxed 0.5 // bump depth
         phase 0.11 frequency 18 }

cylindrical

pigment{ cylindrical frequency 15 turbulence 0
         color_map{[0.0 color rgb <0,0,0>]
                   [0.7 color rgb <1,0,0>]
                   [1.0 color rgb <1,1,1>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <0.75,0.5,0.3>}
normal { cylindrical 0.5 // bump depth
         phase 0.15 frequency 12 }

cells

pigment{ cells scale 0.35 turbulence 0
         color_map { [0.0 color rgb <1,1,1>]
                     [1.0 color rgb <1,0,0>]
                   } // end of color_map
        } // end of pigment

gradient

pigment{ gradient <0,1,0> scale 0.5
         color_map { [0.0 color rgb <1,1,1>]
                     [0.4 color rgb <1,1,1>]
                     [1.0 color rgb <1,0,0>]
                   } // end of color_map
        } // end of pigment
 
box{ <0,0,0>,<2,1,0.01> //---------------------
     texture{
       pigment{ gradient <0,1,0>
                color_map {
                  [0.0 color rgb<1,0,0>]
                  [0.5 color rgb<1,0,0>]
                  [0.5 color rgb<1,1,1>]
                  [1.0 color rgb<1,1,1>]
                  }// end of color_map
                scale <1,0.155,1>
              } // end of pigment
       finish { diffuse 0.9 phong 1 }
     } // end of texture ----------------------
     scale 1  rotate<0,0,0> translate<0,0.7,0>
   }  // end of box ---------------------------
 
pigment{ // Polish version
color_map{[0.0 color rgb <1,0,0>]
          [0.5 color rgb <1,0,0>]
          [0.5 color rgb <1,1,1>]
          [1.0 color rgb <1,1,1>] } //!
 }// end of pigment
normal { bumps 0.25 scale <0.2,1,1>}
// use:
scale <1,-1,1> // for Indonsia version 

leopard

pigment{ leopard scale 0.075  turbulence 0
         color_map{[0.0 color rgb <0,0,0>]
                   [0.2 color rgb <1,1,1>]
                   [1.0 color rgb <1,1,1>]
                  }//end of color_map (optionnal)
        } // end of pigment
pigment{ color rgb <1,1,1>}
normal { leopard 15 // bump depth
          scale 0.0515 }

onion

pigment{ onion scale 0.075 turbulence 0
         color_map{[0.0 color rgb <0,0,0>]
                   [0.7 color rgb <1,1,1>*1.2]
                   [1.0 color rgb <1,1,1>*1.2]
                  }//end of color_map
        } // end of pigment

planar

pigment{ planar frequency 15 turbulence 0
         color_map{[0.0 color rgb <0,0,0>]
                   [0.7 color rgb <1,0,0>]
                   [1.0 color rgb <1,1,1>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <1,1,1>}
normal { planar 0.5 // bump depth
         phase 0.05 frequency 12 }

quilted

pigment{ quilted control0 1 control1 1
         scale 0.25 turbulence 0
         color_map{[0.0 color rgb <1,0,0>]
                   [0.7 color rgb <1,1,0>]
                   [1.0 color rgb <1,1,1>]
                  }//end of color_map (optionnal)
        } // end of pigment
pigment{ color rgb<1.35,0.47,0.55>}
normal { quilted 1 // bump depth
         scale 0.175 }

radial

pigment{ radial frequency 8
         color_map{[0.0 color rgb <1,1,1>]
                   [0.5 color rgb <1,1,1>]
                   [0.5 color rgb <1,0,0>]
                   [1.0 color rgb <1,0,0>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <0.7,1,0>}
normal { pigment_pattern{
         radial sine_wave
         frequency 15 turbulence 0
         color_map {[0, rgb 0.15]
                    [1, rgb 0.50]}
                   } // end of pigment_pattern
       1.5 } // end of normal

spiral1

pigment{ spiral1 10 //number of arms
         color_map{[0.0 color rgb <1,1,1>]
                   [0.5 color rgb <1,1,1>]
                   [0.5 color rgb <1,0,0>]
                   [1.0 color rgb <1,0,0>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <0.7,0.5,1>}
normal { spiral1 10
         bump_size 2.00
       } // end of normal
pigment{ color rgb <1,0.3,0.7>}
normal { spiral1 10
          bump_size 1.00  sine_wave
       } // end of normal

spiral2

pigment{ spiral2 10 //number of arms
         color_map{[0.0 color rgb <1,1,1>]
                   [0.5 color rgb <1,1,1>]
                   [0.5 color rgb <1,0,0>]
                   [1.0 color rgb <1,0,0>]
                  }//end of color_map
        } // end of pigment
pigment{ color rgb <0.35,0.45,1>}
normal { spiral2 10
          bump_size 0.75 sine_wave
       } // end of normal

wood

pigment{ wood scale 0.10 // turbulence 0.05
  /*color_map{ [0.0 color rgb <1,1,1>]
               [1.0 color rgb <0,0,0>]
             }// end of color_map // optional
       */} //---- end of pigment ------
pigment{ color rgb<0.2,0.78,0.35>}
normal{ wood 1.5 scale 0.25 turbulence 0.0
        sine_wave } //---- end of normal 




Pigment and Normal Attributes

Name

Examples

frequency
// oscillation freq. of radial, ripples, waves, etc
lambda
// change surface perturbation property
// makes turbulence more "swirly"
turbulence
// Takes a float or vector, see also octaves, //omega, lambda, frequency

octaves
// increases the "folds" in turbulence changes
omega
// change surface perturbation property
// makes turbulence more "krinkly"
phase
// change the phase of ripples, etc.
// Animation note:
// As phase decreases,
// ripples move outward.

frequency 2.0



lambda 1.2
// (1.0...5.0) [2.0]

turbulence <0, 1, 0.5>

// how much to turbulate the texture

//(0...1 or more)
octaves 3

// (1...10) [default is 6]
omega 1.2

// (0.0...2.0) [default is 0.5]

phase 0.5

top

© Friedrich A. Lohmüller, 2013
www.f-lohmueller.de