An image texture is a two-dimensional (2D) computer image that is used in computer graphics to help add visual characteristics to an on-screen object or area. The image texture can be generated manually or procedurally, or it can be sampled from an actual photograph or other source. In general, an image texture is used to cover the surface of a polygon, such as a triangle or square, through a process called texture mapping. In three-dimensional (3D) computer graphics, an image texture can be wrapped around entire objects made up of many polygons to make a 3D object appear more realistic. There are several other uses for an image texture, including bump mapping, height fields and silhouetting.
Making a normal computer image into a texture image involves applying it to some type of geometry inside a computer application. This geometry can be as simple as a square in a graphics editing program, or it can be as complex as a 3D model made from thousands of polygons. The process of mapping the texture onto the object involves defining where each of the corners of the image will appear on the geometry. For a square, this process is easy, because the image also is square, so each corner of the image corresponds to a corner of the square. This simple 2D texturing can be used to make a single polygon look like a checkerboard with dozens of squares on its surface by using the image of a checkerboard as the texture image.
When a texture image is going to be used to wrap around a 3D object, then different complex algorithms can be used to determine where the various parts of the 2D image will actually appear on the model. The image can be projected directly onto the object, but this generally causes distortion on objects that are not flat. Spheres, for example, will cause an image to pinch on the top and bottom as the geometry collapses to single points. Using the different texture-mapping algorithms — such as spherical, cylindrical or torus mapping — can prevent this from occurring.
A more complex image texture-mapping technique uses surface coordinates to apply the image to an object. This method basically takes the image texture and interpolates the position of each pixel in the image by using a separate set of texture coordinates defined by the user. By knowing what parts of an image will and will not be distorted, the texture image can be adjusted to compensate, presenting the texture as it was meant to be seen. Most professional 3D graphics use this method with an image texture because it gives the most predictable and flexible results on a model from all angles. Textures such as human heads or clothing are frequently applied in this way.