Use any pigment as a pattern. Instead of using the pattern directly on the object, a pigment_pattern converts the
pigment to gray-scale first. For each point, the gray-value is checked against a list and the corresponding item is
then used for the texture at that particular point. For values between listed items, an averaged texture is
calculated. Texture items can be color, pigment, normal or texture and are specified in a color_map, pigment_map,
normal_map or texture_map. It takes a standard pigment specification.
Syntax:
PIGMENT:
pigment {
pigment_pattern { PIGMENT_BODY }
color_map { COLOR_MAP_BODY } |
colour_map { COLOR_MAP_BODY } |
pigment_map { PIGMENT_MAP_BODY }
}
NORMAL:
normal {
pigment_pattern { PIGMENT_BODY } [Bump_Size]
normal_map { NORMAL_MAP_BODY }
}
TEXTURE:
texture {
pigment_pattern { PIGMENT_BODY }
texture_map { TEXTURE_MAP_BODY }
}
ITEM_MAP_BODY:
ITEM_MAP_IDENTIFIER | ITEM_MAP_ENTRY...
ITEM_MAP_ENTRY:
[ GRAY_VALUE ITEM_MAP_ENTRY... ]
This pattern is also useful when parent and children patterns need to be transformed independently from each other.
Transforming the pigment_pattern will not affect the child textures. When any of the child textures should be
transformed, apply it to the specific MAP_ENTRY.
This can be used with any pigments, ranging from a simple checker to very complicated nested pigments. For example:
pigment {
pigment_pattern {
checker White, Black
scale 2
turbulence .5
}
pigment_map {
[ 0, checker Red, Green scale .5 ]
[ 1, checker Blue, Yellow scale .2 ]
}
}
Note: This pattern uses a pigment to get the gray values from. If you want to get the
pattern from an image, you should use the image_pattern.
|