Texture

An image wrapped onto a 3D surface. Sometimes it is the color, sometimes it is data telling the shader how rough or bumpy to be.

the picture wrapped on the modelthe image skinskin for the 3D objecttexurethe photo painted onto the meshsurface image maptexture mapthe wallpaper on the object

See it

Live demo coming soon

What it is

A texture is an image the GPU samples while shading a surface. The obvious use is color (the 'base color' or 'albedo' map), but most textures in a modern scene are not pictures at all: they are data. A roughness map says which patches are polished and which are worn. A normal map fakes bumps. A metalness, opacity, or ambient occlusion map each drives one input of the material. The mesh's UV coordinates decide where each pixel of the image lands on the surface.

Textures are usually the biggest thing a 3D scene downloads and the biggest thing sitting in VRAM. Ship them as KTX2 / Basis so the GPU keeps them compressed in memory instead of unpacking a 4K PNG into roughly 64MB of VRAM. Pack single-channel maps together (roughness in green, metalness in blue) and let mipmaps handle distance so surfaces stop shimmering when the camera moves.

Gotcha: color space matters and gets silently wrong. Base color and emissive maps are sRGB; roughness, metalness, normal, and AO maps are raw linear data. Tag a normal map as sRGB and your lighting goes subtly wrong in a way that reads as 'the render just looks cheap' with no obvious cause.

Ask AI for it

Texture this surface with a 2K PBR texture set: base color (sRGB), roughness, metalness, normal (OpenGL green channel, linear), and ambient occlusion. Tile it seamlessly with a repeat of 4x4 across the UVs, generate mipmaps, and enable anisotropic filtering so the surface does not shimmer at grazing angles. Deliver the maps as KTX2 / Basis compressed, packing roughness and metalness into channels of one image.

You might have meant

uv mapping uv unwrappingnormal mapmaterialmipmapstexture compression

Go deeper