Part 7 — Materials and texturing
How surfaces work (PBR, texture maps, colour space, compression), texturing techniques from trim sheets to decals and photo-sourced materials, and shaders for artists.
How surfaces work
- Physically based rendering (PBR)TopicWhat "physically based" means for a texture artist; energy conservation, Fresnel and microfacets in plain words; metal/roughness versus specular/gloss; safe value ranges; the classic mistakes; and the newer layered models (OpenPBR, Substrate).
- Colour space: sRGB and linearKey termWhy colour textures are stored in sRGB but lit in linear space, how the sRGB curve turns stored values into light, which maps must skip the conversion, and what goes wrong when the flag is set wrongly.
- Texture maps explainedReferenceEvery common texture map in one place; what it stores, whether it is colour (sRGB) or data (linear), how it is usually stored and compressed, and where it plugs into Unreal, Unity and Godot.
- Base colour (albedo) mapKey termThe texture that holds a surface's colour with no lighting in it; diffuse colour for non-metals, reflection colour for metals. Covers safe brightness ranges, measured reference values and the usual mistakes.
- Roughness mapKey termA greyscale texture that says how smooth or rough a surface is at a scale too small to model; black is mirror-smooth, white fully matte. It often carries most of the wear and surface variation in a PBR material.
- Metallic mapKey termA greyscale mask that tells a PBR shader which pixels are metal (white) and which are not (black); it should be almost entirely pure black and white, with grey only for dirt, oxidation and filtered edges.
- Normal mapKey termA texture that stores a surface direction in every pixel, so a low-poly mesh shades as if it had more detail. Covers how the colours encode directions, tangent versus object space, the OpenGL/DirectX green channel, compression, and blending detail normals.
- Ambient occlusionKey termHow much surrounding ambient light can reach each point of a surface; baked AO maps versus screen-space AO versus Lumen and other real-time GI, and the long-running debate about multiplying AO into the base colour.
- Height and displacement mapsKey termA greyscale texture that stores how far each point sits above or below the surface; used for parallax and parallax occlusion mapping (fake depth), for real displacement and tessellation (including Nanite), and for height blending.
- Parallax occlusion mappingKey termA pixel-shader technique that marches the view ray through a height map to fake deep surface relief on flat polygons; how the ray march works, step counts and their cost, self-shadowing and depth offset, the flat silhouette, and how POM compares with tessellation and Nanite displacement.
- Channel packing (ORM)Key termStoring several greyscale maps in the red, green, blue and alpha channels of one texture, such as occlusion, roughness and metallic (ORM). Covers the common layouts in Unreal, Unity (HDRP mask map, URP) and Godot, import settings, and the trade-offs.
- Texture formats, compression and mipmapsTopicHow game engines store textures on the GPU; the BCn family (BC1, BC3, BC4, BC5, BC7) on desktop and console, ASTC and ETC2 on mobile, normal map compression, sRGB flags, mipmaps and power-of-two sizes, texture streaming, memory arithmetic and Unreal's texture groups.
- MipmapsKey termThe chain of half-size copies every 3D texture carries; why distant textures shimmer without them, how the GPU picks and blends levels (bilinear, trilinear, anisotropic), mip filtering and sharpening, what mips do to alpha-tested foliage and glossy normal maps, and the settings in Unreal, Unity and Godot.
- Texture streamingKey termLoading only the mip levels each texture needs for the current view, within a memory budget; how Unreal and Unity do it, the pool size and mip bias settings, why over-budget scenes go blurry, what cannot be streamed, and how artists keep streaming healthy.
- Bit depth and bandingKey termHow many steps a texture channel can store (8, 16 or 32 bits), why smooth normal and height maps band at 8 bits, how dithering hides it, which file formats keep the precision, and why a terrain heightmap must be 16-bit.
- Emissive materialsKey termMaterials that give off light of their own, from screens and neon to lava; HDR values, bloom and exposure, physical units (nits, EV100), when emissive surfaces light the scene (Lumen, baked lighting, Godot GI) and when you still need real lights, with settings in Unreal, Unity, Godot and glTF.
- Opacity, masked and translucent materialsKey termThe three ways engines draw see-through surfaces, masked (alpha test), translucent (alpha blend) and dithered or hashed; what each costs, why foliage thins out at a distance and how coverage-preserving mips fix it, sorting and shadow problems, alpha to coverage, and the settings in Unreal, Unity, Godot and glTF.
- Specular aliasingKey termThe sparkling and shimmering of highlights on glossy, bumpy or finely detailed surfaces; why mipmapped normal maps and dense geometry cause it, how studios fix it in content (Toksvig, roughness mips, The Order 1886) and at runtime (TAA, geometric specular AA, roughness limiters), and what artists can do.
Texturing techniques
- Ways to texture an environmentOverviewA map of the main texturing approaches for real-time environments (unique, tileable, trims, atlases, decals, vertex blending, procedural, photo-sourced and hand-painted), what each costs, what each is good at, and how studios combine them.
- Unique texturing (texture painting)TopicGiving an asset its own texture set by painting directly on the model in Substance 3D Painter, 3DCoat, Mari or Blender; layers, masks, generators, smart materials, anchor points, storytelling wear and export presets.
- Smart materialsKey termSaved layer stacks in Substance 3D Painter (and similar tools) that rebuild themselves on any baked mesh; what they contain, how studios build shared libraries of them, where they fall short, and how to use them without every prop looking the same.
- Tileable materialsTopicMaterials that repeat seamlessly across a surface; how to build them height-first in Substance Designer, from sculpts or from scans, how to check tiling, how to break up repetition, and how to keep them at real-world scale.
- Procedural materials (node-based)TopicBuilding materials from connected nodes instead of painting pixels, in Substance 3D Designer, InstaMAT, Material Maker, Blender shader nodes or the Unreal material graph; exposed parameters, SBSAR files, and when to bake versus compute in the shader.
- Photo-sourced and scanned materialsTopicMaking materials from photographs, from a single photo converted to PBR maps, through multi-light photo sets, to full photogrammetry scans; de-lighting, cross-polarisation, Substance 3D Sampler, and scan libraries.
- De-lightingKey termRemoving the light, shadow and occlusion that a photograph or scan bakes into its colour so the texture can work as a base colour map; capture-time and software approaches, the Unity, Agisoft and Substance tools, and what none of them can fix.
- Cross-polarisationKey termA capture technique that puts one polarising filter on the light and a second, crossed filter on the lens to block specular reflections; how it works, the kit, setting it up, extracting a specular or roughness reference, and its limits.
- Hand-painted and stylised texturingTopicPainting form, light and material into textures by hand for stylised games; value control, hue shifts instead of black and white, neutral values for reuse, tools and workflows, and how hand-painting combines with PBR.
- Trim sheetsTopicTextures made of horizontal strips that tile in one direction, shared by many meshes; why studios use them, how to lay one out, the bevelled "Ultimate Trim" technique, UV workflow, and when trims are the wrong tool.
- Texture atlasesTopicPacking the textures of several objects into one texture so they share a material; how atlases differ from trim sheets, why padding matters, how mipmaps make neighbouring tiles bleed, and decal atlases.
- DecalsTopicProjected decals add leaks, cracks, dirt, graffiti and damage on top of other surfaces without new UVs or textures; how they work in Unreal, Unity and Godot, which channels they can change, and what they cost.
- Mesh decalsTopicDecals made from real geometry (strips and small planes floating just above a surface) that sample a shared decal atlas; used for panel lines, bolts, vents and labels on hard-surface assets, and how to avoid z-fighting.
- GeodecalsKey termGeodecal (geo decal, geometry decal) is artists' shorthand for a decal made of real geometry, a strip or patch floating just above a surface; usually a synonym for mesh decal, sometimes used for edge strips, seam-blending skirts or terrain-conforming patches.
- Edge wearKey termChipped paint, polished metal and rubbed corners on the exposed edges of an object; how edge wear is generated from curvature and AO, painted by hand, baked into trims or computed in the shader, with examples from shipped games.
- Z-fightingKey termThe flickering stripes you see when two surfaces sit at (almost) the same depth; why depth precision runs out with distance, worked numbers, and the fixes artists actually use in kits, decals and engines.
- Vertex painting and blendingTopicPainting vertex colours onto meshes to blend tileable materials (clean to dirty, brick to plaster, dry to wet) directly in the level; tools in Unreal, Unity, Godot and Blender, how vertex density limits the result, and per-instance painting.
- Height blendingKey termBlending two materials by comparing their height maps as well as the blend mask, so sand fills the gaps between stones before it covers their tops; the maths in plain words, contrast, and landscape layers.
- Triplanar and world-aligned mappingTopicProjecting a texture from three directions in world or object space instead of using UVs; how the blend works, how to handle normal maps correctly, what it costs, why textures swim on moving objects, and how to set it up in Unreal, Unity, Godot and Blender.
- Detail maps and macro variationTopicLayering a small, highly tiled detail texture for close-up sharpness and a large, low-frequency macro texture for long-range variation on top of a base material; how to blend normals correctly, how to fade by distance, and what it costs.
- Breaking up tilingTopicWhy tileable materials form visible grids, how to measure the problem, and the full toolbox for hiding it, from authoring choices to shader techniques (random tile offsets, stochastic texturing, macro variation) and hand-placed breakup, with costs and shipped-game examples.
- Normal map blendingKey termHow to combine two normal maps (a base and a detail) correctly; the linear, overlay, UDN, whiteout and reoriented (RNM) formulas, a worked example on real vectors, costs, and the nodes that do it in Unreal and Unity.
Shaders
- Shaders for artistsTopicWhat a shader is, how node-based material graphs in Unreal, Unity, Godot and Blender turn into shader code, the nodes environment artists use every day, how to judge instruction cost, what shader permutations are, and when to ask a technical artist.
- Master materials and instancesTopicBuilding a few parent materials with parameters and switches, and making every surface in a project an instance of them; how instances, static switches and material functions work in Unreal, the equivalents in Unity and Godot, how to organise a project, and the debate between one uber-material and several focused masters.
- Material layers and SubstrateTopicBuilding surfaces by stacking simple materials (concrete, paint, dirt, moss) with masks, either live in the shader or composited and baked offline; Unreal's Material Layers and Substrate, Unity's Layered Lit, the studio systems behind The Order 1886 and Gears of War 4, and how to choose.
- Texture arraysKey termA stack of same-size, same-format textures that a shader picks from by index; how arrays differ from atlases and 3D textures, why terrain and layered materials use them, the rules and limits (custom shaders, streaming), and how to make one in Unreal, Unity and Godot.