Descriptions et exemples pour le POV-Ray raytracer par Friedrich A. Lohmüller
Conception de Surface en »texture« avec POV-Ray -
English English English
Italiano Italiano
Deutsch Deutsch

Page d'Accueil
- POV-Ray Tutoriel

  Conception de Surface
  - Coleurs et Textures
    Index

    Syntaxe de texture
    Textures prêtes-à-l'emploi
    Couleurs en do-it-yourself
   Motifs - Patterns
   > types de motifs
     Motifs régulaires
    - checker, hexagon
      square, triangular
    - brick
    - object pattern (1)
    - object pattern (2)
    - object pattern (3)
    - tiling
    - pavement
     Motifs rayures
    - color_map{...}
     Motifs par pigments
    - pigment_pattern (1)
   > pigment_pattern (2)
    - image_pattern
    Listes de Motifs
    - Motifs régulaires
    - Motifs par hasard
    - Motifs Fractal
    - Autres motifs
    Warps
    uv_mapping
    Mapping
    Superpositions

    Votre textures
 
                                           

  pigment_pattern (2) - motifs par pigment

Exemple 3 : 'pigment_pattern' appliqué à 'normal'
Note : Pour l'utiliser de ce motif dans 'normal'
nous pouvons ajouter un valeur additionnel pour Bump_Size !

Le pigment pure, sans '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
} // --------------------------------------
Le pigment appliqué à 'pigment_pattern' pour '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 }
         }
} // --------------------------------------

Le pigment appliqué à 'pigment' et '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 }
         }
} // --------------------------------------

Un autre exemple voir ici :
  'pigment_pattern' et 'normal'.
Cliquez sur les images pour un résolution plus gran (avec Javascript !)
pattern crackle
Le motif 'crackle' appliqué à pigment.
Fichier POV-Ray : pattern_crackle_normal_0.pov
pigment used as normal pigment_pattern
pigment avec 'crackle' appliqué à motif normal.
Fichier POV-Ray : pattern_crackle_normal_1.pov
pigment_pattern as pigment and normal
Le pigment_pattern pour 'pigment' et 'normal'.
Fichier POV-Ray : pattern_crackle_normal_2.pov

Plus '3D' : fonction pigment avec 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
fonction pigment avec isosurface
Fichier POV-Ray : pattern_crackle_isosurface_3.pov
pigment_pattern
Une variation : 'fn_Pigment_1(x,y,z).gray*0.25'
top

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