Citizendia
Your Ad Here

1 = 3D model without textures2 = 3D model with textures
1 = 3D model without textures
2 = 3D model with textures

Texture mapping is a method for adding detail, surface texture, or colour to a computer-generated graphic or 3D model. Computer animation Computer-generated imagery (also known as CGI) is the application of the field of Computer graphics or more specifically 3D computer graphics In 3D computer graphics, 3D modeling is the process of developing a mathematical, wireframe representation of any three-dimensional object Its application to 3D graphics was pioneered by Dr Edwin Catmull in his Ph. Edwin Catmull, PhD (born 1945 in Parkersburg, West Virginia) is an Academy Award winning Computer scientist and current president of Walt D. thesis of 1974.

Contents

Texture mapping

A texture map is applied (mapped) to the surface of a shape, or polygon. This process is akin to applying patterned paper to a plain white box.

Multitexturing is the use of more than one texture at a time on a polygon. [1] For instance, a light map texture may be used to light a surface as an alternative to recalculating that lighting every time the surface is rendered. A lightmap is a 3D engine light Data structure which contains the brightness of surfaces in a Video game. Another multitexture technique is bump mapping, which allows a texture to directly control the facing direction of a surface for the purposes of its lighting calculations; it can give a very good appearance of a complex surface, such as tree bark or rough concrete, that takes on lighting detail in addition to the usual detailed coloring. ' Bump mapping' is a Computer graphics technique where at each Pixel, a perturbation to the Surface normal of the object being rendered is Bump mapping has become popular in recent video games as graphics hardware has become powerful enough to accommodate it.

Examples of multitexturing1. Untextured sphere 2. Texture and bump maps 3. Texture map only 4. Opacity and texture maps
Examples of multitexturing
1. Untextured sphere 2. Texture and bump maps 3. Texture map only 4. Opacity and texture maps

The way the resulting pixels on the screen are calculated from the texels (texture pixels) is governed by texture filtering. In Digital imaging, a pixel ( pict ure el ement is the smallest piece of information in an image A texel, or tex ture el ement (also tex ture pi' xel) is the fundamental unit of texture space used in Computer graphics In Computer graphics, texture filtering is the method used to determine the texture color for a texture mapped Pixel, using the colors of nearby The fastest method is to use the nearest-neighbour interpolation, but bilinear interpolation or trilinear interpolation between mipmaps are two commonly used alternatives which reduce aliasing or jaggies. Nearest-neighbor interpolation (also known as proximal interpolation or point sampling in some contexts is a simple method of Multivariate interpolation In Mathematics, bilinear interpolation is an extension of Linear interpolation for interpolating functions of two variables on a Regular grid Trilinear interpolation is a method of Multivariate interpolation on a 3-dimensional Regular grid. In 3D computer graphics Texture filtering, MIP maps (also mipmaps) are pre-calculated optimized collections of bitmap images that This article applies to signal processing including computer graphics "Jaggies" is the informal name for Aliasing artifacts in Raster images often caused by non-linear mixing effects producing high-frequency components In the event of a texture coordinate being outside the texture, it is either clamped or wrapped. In computer graphics clamping is the process of limiting a position to an area In computer graphics wrapping is the process of limiting a position to an area

Perspective correctness

Because affine texture mapping does not take into account the depth information about a polygon's vertices, where the polygon is not perpendicular to the viewer it produces a noticeable defect.
Because affine texture mapping does not take into account the depth information about a polygon's vertices, where the polygon is not perpendicular to the viewer it produces a noticeable defect.

Texture coordinates are specified at each vertex of a given triangle (for graphics hardware, polygons are generally broken down into triangles for rendering), and these coordinates are interpolated using an extended Bresenham's line algorithm. The Bresenham line algorithm is an Algorithm that determines which points in an n-dimensional Raster should be plotted in order to form a close approximation If these texture coordinates are linearly interpolated across the screen, the result is affine texture mapping. Linear interpolation is a method of Curve fitting using linear polynomials This is a fast calculation, but there can be a noticeable discontinuity between adjacent triangles when these triangles are at an angle to the plane of the screen (see figure at right).

Perspective correct texturing accounts for the vertices' positions in 3D space, rather than simply interpolating a 2D triangle. This achieves the correct visual effect, but it is slower to calculate. Instead of interpolating the texture coordinates directly, the coordinates are divided by their depth (relative to the viewer), and the reciprocal of the depth value is also interpolated and used to recover the perspective-correct coordinate. This correction makes it so that in parts of the polygon that are closer to the viewer the difference from pixel to pixel between texture coordinates is smaller (stretching the texture wider), and in parts that are farther away this difference is larger (compressing the texture).

Affine texture mapping directly interpolates a texture coordinate u^{}_{\alpha} between two endpoints u^{}_0 and u^{}_1:
u^{}_{\alpha}= (1 - \alpha ) u_0 + \alpha u_1 where 0 \le \alpha \le 1
Perspective correct mapping interpolates after dividing by depth z^{}_{}, then uses its interpolated reciprocal to recover the correct coordinate:


Most modern graphics hardware implements perspective correct texturing, but when games still relied on software rendering, perspective correct texturing had to be used sparingly because of its computational expense. Several different techniques were developed to hide the defect of affine texture mapping. For instance, Doom restricted the world to vertical walls and horizontal floors/ceilings. Doom (officially cased DOOM) is a 1993 Computer game by Id Software that is a landmark title in the First-person shooter This meant the walls would be a constant distance along a vertical line and the floors/ceilings would be a constant distance along a horizontal line. A fast affine mapping could be used along those lines because it would be correct. A different approach was taken for Quake, which would calculate perspective correct coordinates only once every 16 pixels of a scanline and linearly interpolate between them, producing a compromise between the speed of affine texturing and perspective correctness. Quake is a First-person shooter Computer game that was released by Id Software on June 22, 1996. [2]

Another technique was subdividing the polygons into smaller polygons and using an affine mapping on them. The distortion of affine mapping becomes much less noticeable on smaller polygons. Yet another technique was approximating the perspective with a faster calculation such as a polynomial. Finally, some programmers extended the constant distance trick used for Doom by finding the line of constant distance for arbitrary polygons and rendering along it.

See also

References

  1. ^ Blythe, David. UV mapping is a 3D modeling process of making a 2D image representing a 3D model UVW mapping is a technique for applying a 2D image (a texture) to an object of a given Topology. In computer graphics wrapping is the process of limiting a position to an area Advanced Graphics Programming Techniques Using OpenGL. Siggraph 1999. (see: Multitexture)
  2. ^ Abrash, Michael. Michael Abrash's Graphics Programming Black Book Special Edition. The Coriolis Group, Scottsdale Arizona, 1997. ISBN 1-57610-174-6 (PDF) (Chapter 70, pg. 1282)

External links


© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
Dapyx Software network: MP3 Explorer | Ebook Manager | Zenithic