The Cloth texture procedure is ideal for creating fabric-like textures and a variety of other woven effects. In addition to being used as a simple two-dimensional texture, the Cloth procedure is also effective with bump mapping.
For very fine weaves, aliasing may be a problem, particularly when the cloth is viewed from a distance. In this case, the cloth can be turned into a pix file image by using the cloth texture as a Background Environment rather than applying it to a shader. Once the background has been rendered, the resulting pix file can then be applied to the shader as a file texture.
When applied to a bump map, the cloth texture generally produces better effects when both thread colors are white and the gap color is black. The Color Balance options are replaced by the Intensity options, Amult and Aoffset. These options enable you to control the degree of the bump effect. Decreasing the Blurmult value provides greater definition in the bump effect. Generally, both the Amult and Blurmult values should be quite low, that is less than 0.1.
Argument Name | Absolute Range | Useful Range | Default | Description |
u_thread_color | -infinity, infinity | 0, 255 | 255.0, 255.0, 255.0 | RGB value assigned to warp of fabric |
v_thread_color | -infinity, infinity | 0, 255 | 255.0, 0.0, 0.0 | RGB value assigned to weft of fabric |
gap_color | -infinity, infinity | 0, 255 | 0.0, 0.0, 0.0 | RGB value assigned to area between threads |
u_thread_width | 0, 1 | 0, 1 | 0.75 | Width of warp threads |
v_thread_width | 0, 1 | 0, 1 | 0.75 | Width of weft threads |
u_wave | -infinity, infinity | -0.5, 0.5 | 0.0 | Wave pattern of warp |
v_wave | -infinity, infinity | -0.5, 0.5 | 0.0 | Wave pattern of weft |
randomness | 0, infinity | 0, 1 | 0.0 | Smears texture in u,v. |
width_spread | 0, 1 | 0, 1 | 0.0 | Subtracts a random amount off the width of individual threads |
brightness_spread | 0, 1 | 0, 1 | 0.0 | Subtracts a random amount off the brightness level of the threads. |
urepeat | -infinity, infinity | -10.0, 10.0 | 1.0 | # of copies in u direction within coverage area. |
vrepeat | -infinity, infinity | -10.0, 10.0 | 1.0 | # of copies in v direction within coverage area. |
uoffset | -infinity, infinity | -1.0, 1.0 | 0.0 | U offset repeat within coverage area |
voffset | -infinity, infinity | -1.0, 1.0 | 0.0 | V offset repeat within coverage area |
ucoverage | -infinity, infinity | 0.0, 1.0 | 1.0 | amount of U surface to be textured |
vcoverage | -infinity, infinity | 0.0, 1.0 | 1.0 | amount of V surface to be textured |
utranslate | -infinity, infinity | -1.0, 1.0 | 0.0 | amount of U coverage area to be moved. |
vtranslate | -infinity, infinity | -1.0, 1.0 | 0.0 | amount of V coverage area to be moved. |
uwrap | TRUE FALSE | TRUE | flag to wrap texture around U boundaries of coverage area. | |
vwrap | TRUE FALSE | TRUE | flag to wrap texture around U boundaries of coverage area. | |
worldspace | TRUE FALSE | FALSE | flag to use world space texture mapping | |
rotate | -infinity, infinity | -360.0, 360.0 | 0.0 | angle coverage area to be rotated |
mirror | TRUE FALSE | FALSE | flag to match edges of texture |