Texture Mapping

A texture can be mapped on a computer-generated visual using a technique called texture mapping. Here, texture might take the form of color, surface texture, or high frequency detail.


Diffuse mapping, often known as "wrapping" a picture around an object, was the original name for the process of mapping pixels from a texture to a 3D surface. A real-time simulation of near-photorealism is now possible thanks to the development of multi-pass rendering, multitexturing, mipmaps, and more complex mappings such as height mapping, bump mapping, normal mapping, displacement mapping, reflection mapping, specular mapping, and many other variations on the technique (controlled by a materials system).

Texture Maps

A texture map is an image that has been applied (mapped) to the exterior of a form or polygon. This could be a bitmap image or a procedural texture. They might be kept in widely used image file formats, used as references in 3d model formats or material definitions, and put together as resource bundles.

Although visible surfaces typically have two dimensions, they can have up to three. To increase cache coherency for usage with contemporary hardware, texture map data may be stored in swizzled or tiled orderings. Rendering APIs typically manage texture map resources as buffers or surfaces and may support 'render to texture' for additional effects like post processing or environment mapping. These resources may be found in device memory.

For billboards and decal overlay textures, they frequently include RGB color data (either stored as direct colorcompressed formats, or indexed color), as well as an additional channel for alpha blending (RGBA). The alpha channel can be used for additional purposes, like as specularity, and may be practical to store in formats that hardware can understand.

For control over specularitynormalsdisplacement, or subsurface scattering, for example when rendering skin, multiple texture maps (or channels) may be merged.

To minimize state transitions for contemporary technology, several texture pictures may be combined in texture atlases or array textures. They could be seen as a more contemporary development of tile map graphics. For environment mapping, cube map textures with multiple faces are frequently supported by modern technology.

Creation

Texture maps can be acquired by scanning/digital photography, designed in image manipulation software such as GIMPPhotoshop, or painted onto 3D surfaces directly in a 3D paint tool such as Mudbox or zbrush.

Texture Application

Applying patterned paper to a simple white box is how this procedure works. Each vertex in a polygon is given a texture coordinate, also known as UV coordinates in the case of two-dimensional geometry.This may be accomplished by explicitly assigning vertex characteristics, or it can be done manually in a 3D modeling program using UV unwrapping tools. It is also feasible to link the material to a procedural transition from 3D space to texture space. Planar projection, as well as cylindrical or spherical mapping, are other options for doing this. In more intricate mappings, the distance along a surface could be taken into account to reduce distortion. In order to sample the texture map during rendering, these coordinates are interpolated over the faces of polygons. To cover a greater area with a finite rectangular bitmap, textures can be duplicated or mirrored. Alternatively, they can contain a one-to-one unique "injective" mapping from each component of the surface (this is crucial for render mapping and light mapping, also known as baking).

Texture space

In texture space, which is created by translating the model surface (or screen space in the case of rasterization) into texture maps, the texture map appears as intended. A perspective in texture space is often provided by UV unwrapping tools so that texture coordinates may be manually edited. Texture-space operations can roughly implement some rendering methods, such subsurface scattering.

Multitexturing