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 (1) - motifs par pigment

// Syntaxe pour 'pigment_pattern' :
pigment{ //-----------------------------
  pigment_pattern{ PIGMENT_BODY }
     color_map{ COLOR_MAP_BODY }
     | pigment_map{ PIGMENT_MAP_BODY }
} //------------------------------------
// Syntaxe pour 'texture' :
texture{ //-----------------------------
   pigment_pattern{ PIGMENT_BODY }
     texture_map{ TEXTURE_MAP_BODY }
} //------------------------------------
// Syntaxe pour 'normal' :
normal{ //------------------------------
       pigment_pattern { PIGMENT_BODY }
      [Bump_Size]
       normal_map { NORMAL_MAP_BODY }
} //------------------------------------

Ce Motif obtient les valeurs 3D de gris
d'un pigment comme un motif pour
color_map, pigment_map,
textur_map ou normal_map.

Nous pouvons utiliser cela avec des pigments,
de plus simple à imbriquée très compliqué.




Note : Pour l'utiliser de ce motif dans 'normal'
nous pouvons ajouter un valeur additionnel pour Bump_Size !
Exemple 1 : 'pigment_pattern' appliqué à pigment
#declare Pigment_0 =
pigment{
  pavement
    number_of_sides 4// 3tri,4quadrat,6hexgon
    number_of_tiles 1//  (1 to 5 or 6)
    pattern 1 // from 1~max. relevant value
    //corners: 0=sharp,1=bevelled,2=rounded
    exterior 0 // 0, 1 or 2; Not for hexagon
    interior 0 // 0, 1 or 2
    form 0//  0, 1, 2
    color_map{
     [ 0.00 color rgb<1,1,1>*0 ]
     [ 0.75 color rgb<1,1,1>*0 ]
     [ 1.00 color rgb<1,1,1>*1 ]
    } // end color_map
  scale 0.255
} // end pigment ----------------------------
//-------------------------------------------
#declare Pigment_1 =
pigment{
  leopard scale 0.075  turbulence 0
    color_map{
     [0.00 color rgb<0,0,0>]
     [0.2  color rgb<0,0,0>]
     [0.2  color rgb<1,1,1>]
     [1.00 color rgb<1,1,1>]
    }//end of color_map (optionnal)
  rotate<45,0,0>
} // end of pigment
//-------------------------------------------

object{
   Round_Box(<-1,0,-1>,<1,1,0.99>,0.02,0)
   texture{
     pigment{
       pigment_pattern{
         Pigment_0
         scale<1.07,1,1.03>*0.9
       } // end pigment_pattern
       pigment_map{
        [ 0.00  color White ]
        [ 0.50  Pigment_1 scale 0.08]
        [ 1.00  Pigment_1 scale 0.08]
       } // pigment_map
       scale 1.02
       translate<-0.11,0.02,-0.14>
     } // pigment
     finish { phong 1 }
     scale  1
   } // texture
 rotate<0, 0,0> translate<0,0,0>
} // ----------------------------------------
Cliquez sur les images pour un résolution plus gran (avec Javascript !)
pigment used as a pattern
Le pigment 'Pigment_0' utiliser come un motif.
Fichier de scène POV-Ray : pattern_pavement_quadrat_0.pov
pigment used with pattern
The pigment 'Pigment_1' used with pattern.
Fichier de scène POV-Ray : pattern_leopard_0.pov
pigment_pattern
The pigment using pigment_pattern.
Fichier de scène POV-Ray : pigment_pattern_0.pov

Exemple 2 : pigment_pattern - a variation
#declare Pigment_2 =
pigment{
  pavement
    number_of_sides 4//3tri,4quadrat,6hexagon
    number_of_tiles 1 //  (1 to 5 or 6)
    pattern 1 // from 1~max.relevant value
    //corners: 0=sharp, 1=bevelled, 2=rounded
    exterior 2 // 0, 1 or 2; Not for hexagon.
    interior 0 // 0, 1 or 2
    form 0//  0, 1, 2
    color_map{
     [ 0.00 color rgb<1,1,1>*1 ]
     [ 0.65 color rgb<1,1,1>*0.5 ]
     [ 1.00 color rgb<1,1,1>*0 ]
    } // end color_map
} // end pigment
//------------------------------------
#declare Pigment_3 =
pigment{
  leopard scale 0.075  turbulence 0
    color_map{
     [0.00 color rgb<0,0,0>]
     [0.20 color rgb<0,0,0>]
     [0.20 color rgb<0.7,0,0>]
     [1.00 color rgb<1,1,1>]
    }//end color_map
  rotate<45,0,0>
} // end pigment
//------------------------------------
object{
  Round_Box(<-1,0,-1>,<1,1,0.99>,0.02,0)
  texture{
    pigment{
      pigment_pattern{
        Pigment_2 scale 0.65
        translate<0.15,0,0.10>
      } // pigment_pattern
      pigment_map{
       [ 0.00 color rgb<0.8,0.6,1>   ]
       [ 0.50 Pigment_3 scale 0.08]
       [ 1.00 Pigment_3 scale 0.08]
      } // pigment_map
      scale 1.02
      translate<-0.11,0.02,-0.14>
    } // pigment
    finish { phong 1 }
    scale  1
  } // texture
  rotate<0, 0,0>  translate<0,0,0>
} // -------------------------------

pigment_pattern
A variation of pigment_pattern
POV-Ray scene file: pigment_pattern_1.pov
top

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