Glossary
Prev | Chapter 14. Textures are not Pictures | Next

## Glossary

look-up table

  A table that is used to represent an expensive function computation. The function is sampled at discrete intervals. To access the function, the input values for the function are transformed into a discrete location in the table and that value is returned.

texture

  An object that contains one or more images of a particular dimensionality. The data in the images can be fetched by the user in a shader. Textures have a type, which represents the nature of that particular texture.

sampling

  The process of accessing a particular memory location in one of the images of a texture.

image

  An array of data of a particular dimensionality. Images can be 1D, 2D, or 3D in size.

texture type

  Represents the basic nature of the texture. The texture type defines the dimensionality of the images it stores. It defines the size of the texture coordinate that the texture takes, the number of images it can contain, and various other information about the texture.

normalized integers

  An integer that represents a floating-point value on the range [0, 1] for unsigned integers and [-1, 1] for signed integers. Normalized integers use their entire bitrange to represent a floating point value. The maximum value for the integer's bitdepth represents the maximum floating point value, and the minimum value for the integer's bitdepth represents the minimum floating point value.

pixel transfer

  The act of sending pixel data to an image in OpenGL, or receiving pixel data from OpenGL.

texel

  A pixel within a texture. Used to distinguish between a pixel in a destination image.

GLSL sampler

  A number of types in GLSL that represents a texture bound to a texture image unit of the OpenGL context. For every texture type in OpenGL, there is a matching sampler type. There are a number of restrictions on the use of samplers in GLSL. They can only be declared globally as uniforms and as input parameters to functions. They can only be used as the value passed to a function, whether user-defined or built-in.

texture coordinate

  A value that is used to access locations within a texture. Each texture type defines what dimensionality of texture coordinate it takes (note that the texture type may define a different dimensionality from the image dimensionality). Texture coordinates are often normalized on the range [0, 1]. This allows texture coordinates to ignore the size of the specific texture they are used with.

  Texture coordinates are comprised by the S, T, R, and Q components, much like regular vectors are composed of X, Y, Z, and W components. In GLSL, the R component is called “P” instead.

texture image unit

  An array of locations in the OpenGL context where texture objects are bound to. Programs can have their GLSL sampler uniforms associated with one of the entries in this array. When using such a program, it will use the texture object bound to that location to find the texture for that GLSL sampler.

sampler object

  An OpenGL object that defines how a texture is accessed in the shader. The parameters that are set on a sampler object can also be set on a texture object, but if a sampler is bound to the same image unit as a texture, then the sampler takes precidence.

perspective-correct interpolation

  A scheme for interpolating values across the surface of a triangle in pre-projection space. This is necessary when working with perspective projections. This is the default interpolation scheme in OpenGL; it can be selectively disabled with the `noperspective` GLSL qualifier.

texture mapping

  The association between one or more textures and positions on the surface. This association is made by putting texture coordinates in the per-vertex attribute data. Therefore, each triangle vertex has a texture coordinate.

Prev | Up | Next
In Review | Home | Chapter 15. Many Images