Hair Card Atlas Padding and Mipmap Bleeding Explained

Hair card atlas padding and mipmap bleeding explained: edge dilation, gutter widths and UV layout rules for clean cards at distance.

On this page Why atlases bleed On this page
  1. Why atlases bleed
  2. Edge dilation and padding
  3. Layout rules that survive
  4. Pre-export checklist

A hair card atlas looks perfect at full resolution and fringes at gameplay distance. The cause is filtering, not bad art: mipmaps average neighbouring texels, and neighbours at an atlas border belong to a different card — or to empty background.

Cause

Why atlases bleed

Every mipmap level halves the texture, so a background-coloured gutter beside a strand eventually averages into the strand. The visible symptoms are dark halos, eroded strand tips and alpha edges that shimmer as the camera moves. The smaller the on-screen card and the tighter the packing, the earlier the bleeding starts.

Scroll horizontally to view all columns.

Bleeding symptoms and causes
Symptom at distance Cause Where it is fixed
Dark or light halo around strands Background colour sampled into the strand at lower mips. Bake with edge dilation; widen padding.
Strand tips erode or vanish Thin geometry covers sub-texel area at low mips. Minimum card width rule; alpha stays exact, colour dilates.
Neighbour card colour leaks in Atlas neighbours packed gutter-to-gutter. Gutter width sized to the mipmap chain, not to taste.
Fix

Edge dilation and padding

HairStorm's bake engine expands colour texels into background gutters while leaving the alpha mask exact: edges stay razor-sharp, but the colours a mip level averages in are strand colours, not background. Padding then guarantees those dilated gutters never touch a neighbour card.

Card Shape controls for padding and segment counts. Padding is measured in texels at bake resolution — it shrinks in relative terms as mipmaps descend.
Rules

Layout rules that survive

  1. Bake at final resolution or higher

    Bake at the resolution you will ship — up to 2K on Free, up to 4K on Personal, Professional and Studio. Padding sized at 4K covers deeper into the mip chain than padding sized at 1K.

  2. Keep padding proportional to the smallest strand

    Fine flyaway strands need proportionally wider gutters than chunky bands. If tips erode first, raise padding before touching the art.

  3. Never share a gutter between two cards

    Auto-packed HairStorm atlases assign every card its own dilated gutter via dual UV channels (UV0 geometry, UV1 atlas sampling). Hand-edited UVs must preserve that separation — see bake maps and UV cards.

Verify

Pre-export checklist

Run this at the resolution you will ship, in the engine you will ship in — Unreal Engine 5 or Blender — before calling the atlas done: zoom to gameplay distance, force the lowest mip you support, orbit the head, and watch card borders and strand tips. If it survives that, it survives players.

Studio Inspector

100%