Home
Elvov ELVOV

Looking for R&D experts in 3D for your company?

Running Scratchapixel is a labor of love, and keeping it independent, alive and growing means taking on professional work alongside it. The people behind Scratchapixel also run Elvov, an independent engineering consultancy helping companies solve challenging problems in 3D graphics and OpenUSD — across robotics and AI, games and VFX, CAD, simulation, digital twins, and beyond.

R&D

3D applications, rendering, simulation, visualization and custom engineering.

OpenUSD Integration

Deep, code-level expertise in OpenUSD, including experience building our own implementation.

Engineering Leadership

From hands-on development to architecture, technical strategy and fractional CTO support.

Get in touch

Introduction to Texturing

Distributed under the terms of the CC BY-NC-ND 4.0 License.

  1. Introduction to Texturing
  2. Basic Implementation
  3. Texture Filtering
  4. Manipulating Textures
  5. Color Space
  6. Normal Mapping

Website update. The Scratchapixel website was regenerated with a new build system on 29 June 2026. While we've carefully checked the output, there may still be a few broken links, formatting issues, or missing features. If you notice anything unusual, please let us know on our Discord server. Your feedback helps us improve the site.

Support Scratchapixel. If these lessons have helped you and you'd like to contribute towards hosting and development costs, you can support the project with a donation via PayPal. Thank you for helping keep Scratchapixel free for everyone.

Texture Filtering

Reading time: 1 mins.

Texture Filtering: Aliasing, Anti-Aliasing, Filters and Mip-Maps

WIP

XX Without filtering, the result looks much more like an image from the original DOOM video game, because without filtering, if you imagine a section of geometry that is very, very close to the camera, several pixels on the screen will cover a single texel of the texture. In texture mapping, to distinguish between the pixels on the screen and the pixels in the texture, we refer to the texture's pixels as texels. So, the projection of a texel onto the screen can cover multiple pixels of the image. When this happens, the result appears very blocky. However, if you use filtering techniques, you’ll achieve a much smoother transition between the different texels of the texture.

XX We can also add that on the GPU, image filtering is done in hardware, making it extremely fast. Linear interpolation itself isn't particularly slow, but the more pixels involved in the filtering process—for example, when using bilinear or trilinear filtering—the longer the filtering operation can take. Therefore, having this accelerated on the GPU is a significant advantage. In essence, texture filtering on the GPU is almost "free."

previousnext