Gradient


Die Pigmentierung "Gradient" erlaubt es, das Prinzip vieler anderer Texturen am besten zu erklären. Beim Gradienten wechselt die Farbe eines Körpers in der angebenenen Richtung schrittweise von schwarz nach weiß. Die Pigmentierung wird in Einer-Schritten wiederholt. Da sich auch Texturen skalieren lassen, kann die Schrittweite beliebig verändert werden:


/* ............ */
plane {<0, 1, 0>, -1.2
   texture {
      gradient x

   }
}

sphere {<0, 0, 0>, 1
   texture {
      pigment {
         color rgb <1, 0, 0>
      }
      finish {
         phong 0.9
      }
   }
}

Durch eine colormap kann die Farbauswahl beliebig verändert werden. Dabei werden die Farben für den Bereich von 0 bis 1 einzeln vorgegeben:


/*............. */
plane {<0, 1, 0>, -1.2
   texture {
    pigment {
      gradient x
      color_map {
         [ 0.2 color rgb <1.0, 0, 0.2>]
         [ 0.4 color rgb <0.8, 0, 0.4>]
         [ 0.6 color rgb <0.6, 0, 0.6>]
         [ 0.8 color rgb <0.4, 0, 0.8>]
         [ 1.0 color rgb <0.2, 0, 1.0>]
      }
    }
   }
}

sphere {<0, 0, 0>, 1
   texture {
      pigment {
         color rgb <1, 0, 0>
      }
      finish {
         phong 0.9
      }
   }
}

Durch eine turbulence wird ein Zufallsgenerator aktiviert, wodurch die Regelmäßigkeit der Pigmentierung zerstört wird:


/* ........... */
plane {<0, 1, 0>, -1.2
   texture {
    pigment {
      gradient x
      color_map {
         [ 0.2 color rgb <1.0, 0, 0.2>]
         [ 0.4 color rgb <0.8, 0, 0.4>]
         [ 0.6 color rgb <0.6, 0, 0.6>]
         [ 0.8 color rgb <0.4, 0, 0.8>]
         [ 1.0 color rgb <0.2, 0, 1.0>]
      }
      turbulence 0.2
    }
   }
}

sphere {<0, 0, 0>, 1
   texture {
      pigment {
         color rgb <1, 0, 0>
      }
      finish {
         phong 0.9
      }
   }
}

Um die Farben nicht einzeln angeben zu müssen, kann auch ein Bereich angeben werden, innerhalb dessen sich die Farbe stufenlos ändern soll:


/* ............ */
plane {<0, 1, 0>, -1.2
   texture {
    pigment {
      gradient x
      color_map {
         [ 0.0 1.0 color rgb <1.0, 0, 0.2>
                   color rgb <0.2, 0, 1.0>]
      }
      turbulence 0.2
      }
   }
}

sphere {<0, 0, 0>, 1
   texture {
      pigment {
         color rgb <1, 0, 0>
      }
      finish {
         phong 0.9
      }
   }
}