9 October 2026 · 7 min read

Baking Normal Maps: How Low-Poly Models Look High-Poly

A game character can have millions of polygons worth of detail on a model that only uses a few thousand. The trick is baking.

Baking Normal Maps: How Low-Poly Models Look High-Poly

What is baking?

Baking means calculating information once, ahead of time, and storing it in a texture so the game does not have to calculate it live. The most common case is transferring the surface detail of a very detailed high-poly model onto a lightweight low-poly model through texture maps.

What is a normal map?

A normal map is an image where each pixel stores a direction (the surface normal). The lighting calculation uses that direction instead of the real geometry, so a flat polygon can look like it has dents, rivets and stitching. The purple-blue look of a typical normal map is just the direction data stored as RGB color. The silhouette does not change, so important shapes still need real geometry (see topology).

Maps you can bake

  • Normal: surface detail.
  • Ambient occlusion: contact shadows in crevices.
  • Curvature: convex and concave edges, used to drive wear and edge highlights when texturing.
  • Position, thickness, ID: helper maps for masks and effects. An ID map colors parts to make selecting them easy in Substance Painter.

The bake process

  1. Prepare the high-poly and low-poly in the same position and scale.
  2. Make sure the low-poly has clean UVs with padding and no accidental overlaps.
  3. Set smoothing: hard edges (split normals) should match UV seams.
  4. Use a cage or an extrusion distance so rays travel from the low-poly outward to the high-poly.
  5. Bake in tangent space at the right resolution, with enough padding.
  6. Inspect the result and fix errors, then continue to texturing.

Common baking problems

  • Skewed or stretched details: usually from stretched UVs or a poor cage.
  • Gradient shading across a hard edge: smoothing groups and UV seams do not line up. Splitting UVs along hard edges and using a baking tangent basis that matches your engine fixes most of it.
  • Floating dots or rays: the rays hit the wrong surface. Reduce distance or explode objects slightly apart.
  • Seams visible in-game: not enough padding or a mismatched tangent basis (for example MikkTSpace in the baker but not in the engine).
  • Wrong green channel: OpenGL and DirectX normal maps differ. See PBR textures explained.

When not to bake

Simple stylized props with hand-painted detail often need no normal map at all. That saves memory and time. Bake when the detail is fine and structural; paint when it is soft and stylized.

All our 3D assets are baked, checked in-engine and delivered with clean maps.

Have a project in mind? Get a free estimate.

Tell us about your project and get a free estimate within one business day.

Get a free estimate