Difference between revisions of "Reference:Image Pattern"
Jholsenback (talk | contribs) m (1 revision: Reference Migration Initial Load) |
Le Forgeron (talk | contribs) |
||
Line 74: | Line 74: | ||
</pre> | </pre> | ||
<p>This will cause POV-Ray to perform gamma adjustment or -decoding on the input file data before building the image pattern. Alternatively to a numerical value, <code>srgb</code> may be specified to denote that the file format is pre-corrected or encoded using the <em>sRGB transfer function</em> instead of a power-law gamma function. See section [[Documentation:Tutorial Section 3.3#Gamma Handling|Gamma Handling]] for more information on gamma.</p> | <p>This will cause POV-Ray to perform gamma adjustment or -decoding on the input file data before building the image pattern. Alternatively to a numerical value, <code>srgb</code> may be specified to denote that the file format is pre-corrected or encoded using the <em>sRGB transfer function</em> instead of a power-law gamma function. See section [[Documentation:Tutorial Section 3.3#Gamma Handling|Gamma Handling]] for more information on gamma.</p> | ||
+ | |||
+ | |||
+ | <table class="centered" width="420px" cellpadding="0" cellspacing="10"> | ||
+ | <tr> | ||
+ | <td>[[Image:RefImgImagePigment.png|center|200px<!--centered--->]]</td> | ||
+ | <td>[[Image:RefImgImageNormal.png|center|200px<!--centered--->]]</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td colspan="2"><p class="caption">image pattern used as pigment and normal respectively</p></td> | ||
+ | </tr> | ||
+ | </table> |
Revision as of 09:12, 1 March 2014
Instead of placing the color of the image on the object like an image_map
, an image_pattern
specifies an entire texture item (color, pigment, normal or texture) based on the gray value at that point.
This 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.
It takes a standard image specification and has one option, use_alpha
, which works similar to use_color
or use_index
.
Note: See the section Using the Alpha Channel for some important information regarding the use of image_pattern
.
Syntax:
PIGMENT: pigment { IMAGE_PATTERN color_map { COLOR_MAP_BODY } | colour_map { COLOR_MAP_BODY } | pigment_map { PIGMENT_MAP_BODY } } NORMAL: normal { IMAGE_PATTERN [Bump_Size] normal_map { NORMAL_MAP_BODY } } TEXTURE: texture { IMAGE_PATTERN texture_map { TEXTURE_MAP_BODY } } IMAGE_PATTERN: image_pattern { BITMAP_TYPE "bitmap.ext" [gamma GAMMA] [premultiplied BOOL] [IMAGE_MAP_MODS...] } IMAGE_MAP_MOD: map_type Type | once | interpolate Type | use_alpha ITEM_MAP_BODY: ITEM_MAP_IDENTIFIER | ITEM_MAP_ENTRY... ITEM_MAP_ENTRY: [ GRAY_VALUE ITEM_MAP_ENTRY... ]
It is also useful for creating texture masks, like the following:
texture { image_pattern { tga "image.tga" use_alpha } texture_map { [0 Mytex ] [1 pigment { transmit 1 } ] } }
Note: This pattern uses an image to get the gray values from. If you want exactly the same possibilities but need to get gray values from a pigment, you can use the pigment_pattern.
While POV-Ray will normally interpret the image pattern input file as a container of linear data irregardless of file type, this can be overridden for any individual image pattern input file by specifying gamma
GAMMA immediately after the file name. For example:
image_pattern { jpeg "foobar.jpg" gamma 1.8 }
This will cause POV-Ray to perform gamma adjustment or -decoding on the input file data before building the image pattern. Alternatively to a numerical value, srgb
may be specified to denote that the file format is pre-corrected or encoded using the sRGB transfer function instead of a power-law gamma function. See section Gamma Handling for more information on gamma.