OpenGL® texture mapping is a process by which images, called texture maps, are applied to digital geometry within a three-dimensional (3D) graphics program. Different types of programs can utilize various processes for accomplishing the application of texture maps, and OpenGL® methods utilize programming “calls” to bring a texture into the virtual environment. This is typically done by first calling a texture map into the virtual memory of a program, which then allows it to be applied to objects within that program. OpenGL® texture mapping then requires the use of code to indicate what surfaces that map should be applied to and how it is applied.
The purpose of OpenGL® texture mapping is to make virtual 3D objects in OpenGL® applications appear more realistic. Objects are created by generating and manipulating various two-dimensional (2D) surfaces that act as the outside of the objects. These surfaces only have a plain, colored appearance, however, unless a texture map is applied to them to provide greater detail and a more realistic appearance. A texture map that is used in OpenGL® texture mapping is an image that resembles the surface or texture of an object that, once applied to a virtual object, makes it appear more like that real object.
OpenGL® texture mapping requires code that is created much like other types of software programming, which allows a program to utilize textures within it. This typically begins with a call within the software to help the program recognize the texture that is going to be used. Texture maps can be provided in a number of different file types, though they are images that can be fairly large or quite small in size.
The initial call for the map in OpenGL® texture mapping allows the system to recognize different maps and assign each one an identification number. Texture maps are brought into the virtual memory of the software, allowing a program to access the texture map. Once it is in virtual memory, then other processes can proceed without the program constantly having to look for the texture again.
OpenGL® texture mapping then requires additional code to indicate what object the map is to be applied to, and how it is applied. This usually requires specific surfaces to be indicated for the texture, and uses vertices on the surface to indicate how the texture is oriented and applied. Other aspects of the map can be dictated in this code as well, such as how environmental lighting and effects should interact with the map and how it can be wrapped around the object or repeated across a surface. Greater control and customization is also possible during mapping, though this usually requires expert understanding of the entire process.