Key Concepts in Texturing
-
Filtering Techniques:
- Magnification:
- Nearest Neighbor: Chooses the nearest texel, fast but can appear blocky.
- Linear Filtering: Smooths the result by interpolating between adjacent texels.
- Minification:
- Nearest Neighbor, Linear, Bilinear, and Trilinear Filtering: These techniques vary in complexity and smoothness, with trilinear being the most advanced, combining bilinear filtering and mipmaps for better detail at various distances.
- Mipmaps: Precomputed textures at different resolutions to improve performance and reduce aliasing for distant objects. Mipmaps require about 33% more memory.
- Anisotropic Filtering: Enhances texture clarity at oblique angles by taking multiple trilinear-filtered mipmap samples, often up to 16, along the texture’s line of anisotropy.
- Magnification:
-
Environment Mapping:
- Cube Maps: A common method for simulating reflections by mapping a six-sided texture cube, which avoids distortions and is not view-dependent.
- Lookup Calculation: Requires computing a reflection vector to determine the correct face and coordinates on the cube.
-
Bump Mapping:
- Adds surface detail without altering geometry by adjusting the normal vector per pixel, creating the illusion of bumps and wrinkles.
- Normal Mapping: A type of bump mapping that stores normals in a texture, enabling reuse and tiling.
-
3D Textures:
- Stores data in a 3D space, allowing for effects such as volumetric texturing and enabling smooth transitions across multiple layers. Filtering uses quadlinear interpolation (trilinear within each level, plus interpolation between levels).
-
Sprites:
- 2D images that appear as objects in 3D environments, often used for simple effects like particles. They do not interact with the depth buffer.
-
Billboards and Impostors:
- Billboards: 2D textures oriented toward the camera, often used for effects like smoke and trees.
- View-Plane vs. Viewpoint Orientation:
- View-Plane: Aligned to the camera’s plane, often preferred for realistic effects.
- Viewpoint Oriented: Rotates to face the camera position, resembling traditional 3D geometry.
- Transparency Handling: Blending and alpha testing for realistic visibility. Sorting back-to-front for accurate blending is sometimes necessary.
-
Particle Systems:
- Used to simulate effects like smoke, fire, or dust. Particles are often animated and displayed as billboards or sprites.