Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller
Gestaltung von Oberflächen mit POV-Ray -
English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  Oberflächengestaltung
  - Farben und Texturen
    Inhalt

    texture Syntax
    Vorgefertigtes
    Farben Do-it-Yourself
   Muster
    - patterns -Arten
    Reguläre Muster
    - checker, hexagon
      square, triangular
    - brick
    - object pattern (1)
    - object pattern (2)
    - object pattern (3)
    - tiling
    - pavement
    Streifenmuster
    - color_map{...}
    Patterns mit pigment
    - pigment_pattern (1)
   > pigment_pattern (2)
    - image_pattern
    Muster Listen
    - Reguläre Muster
    - Random Muster
    - Fractal Muster
    - Besondere Muster
    Warps
    uv_mapping
    Mapping
    Überlagerungen

    Eigene Texturen
 
                                           
  pigment_pattern (2)

Beispiel 3: 'pigment_pattern' angewandt in 'normal'
Anmerkung: Bei Verwendung dieses Patterns in 'normal'
gibt es einen zusätzlichen Wert für Bump_Size !

'pigment' ohne 'normal':
#declare Pigment_1 =   //------------------
pigment{ crackle
         turbulence 0.35 scale 0.45
         color_map{
          [0.00 color rgb<1,1,1>*0]
          [0.08 color rgb<1,1,1>*0]
          [0.40 color rgb<1,0.55,0>]
          [1.00 color rgb<1,1,0.8>]
         } // end of color_map
} // end of pigment -----------------------
object{ //---------------------------------
  Round_Box(<-1,0,-1.25>,<2,2,2>,0.15,0)
  texture{ pigment{ Pigment_1  }
           finish { phong 1 }
         } // end texture
} // --------------------------------------
'pigment' verwendet als 'pigment_pattern' für 'normal':
object{ //---------------------------------
  Round_Box(<-1,0,-1.25>,<2,2,2>,0.15,0)
  texture{ pigment{ color rgb<1,1,1>*0.8 }
           normal {
             pigment_pattern{
               Pigment_1
             } // pigment_pattern
             0.5 // BUMP_SIZE
           } // end of normal
           finish { phong 1 }
         }
} // --------------------------------------

'pigment' verwendet für 'pigment' und als 'pigment_pattern':
object{ //---------------------------------
  Round_Box(<-1,0,-1.25>,<2,2,2>,0.15,0)
  texture{ pigment{ Pigment_1 }
           normal {
             pigment_pattern{
               Pigment_1
             } // pigment_pattern
             1.5 // BUMP_SIZE
           } // end of normal
           finish { phong 1 }
         }
} // --------------------------------------

Ein weiteres Beispiel siehe hier:
'pigment_pattern' und 'normal'.
Klicken Sie auf die Bilder für größere Auflösungen (Javascript an!)
pattern crackle
Das Muster 'crackle' verwendet mit 'pigment'.
POV-Ray Szenendatei: pattern_crackle_normal_0.pov
pigment used as normal pigment_pattern
'pigment' mit 'crackle' als 'normal'-Muster.
POV-Ray Szenendatei: pattern_crackle_normal_1.pov
pigment_pattern as pigment and normal
Das 'pigment_pattern' als pigment und normal.
POV-Ray Szenendatei: pattern_crackle_normal_2.pov

Mehr '3D': Verwendung einer
'pigment'-Funktion mit 'isosurface'
#declare fn_Pigment_1 =
function {pigment{ Pigment_1} }

isosurface { //----------------------------
  function{
    f_rounded_box(
        x,y,z,
        0.15, // radius of curvature
        1.5, 1.0, 1.625  // scale<x,y,z>
                 ) //
     - fn_Pigment_1(x,y,z).gray*0.1 
  } // end function
  threshold 0
  contained_by {box {<-2,-2,-3>,<2,2,3.5>}}
  max_gradient 6
  accuracy 0.0001
  texture{
     pigment{ Pigment_1 }
     normal { crackle 0.5 scale 0.045}
     finish { phong 1}
   } // end texture
  translate <0.5, 1.1, 0.375>
} // end of isosurface --------------------

pigment_pattern
Pigment-Function mit isosurface
POV-Ray Szenendatei: pattern_crackle_isosurface_3.pov
pigment_pattern
Eine Variation: 'fn_Pigment_1(x,y,z).gray*0.25'
top

© Friedrich A. Lohmüller, 2012
http://www.f-lohmueller.de