Rig Bake logoRig Bake

Rig BakeFeatures › Re-unwrap UVs and re-bake the textures

Re-unwrap UVs and re-bake the textures

AI generators hand you a UV map made of confetti. Rig Bake re-charts the mesh into a clean, non-overlapping atlas — and re-bakes every texture onto it, so the model still looks identical.

Open Rig Bake — free, in your browser

No sign-up. No upload — models stay on your machine. Works in any WebGL 2 browser.

A model from Meshy AI, Tripo or Rodin renders fine out of the box, which hides the problem: its UVs were generated by an auto-unwrapper with no regard for how anyone would use them. Thousands of tiny islands, scattered, often overlapping, most of the texture surface wasted on gutter. The moment you want to repaint it, bake lighting into it, or merge it into an atlas, that map is in your way.

Meshy auto-unwrap
The original UV layout from Meshy AI — thousands of tiny scattered islands covering the map
Re-unwrapped — 98% used
The new UV layout — large, coherent charts packed tightly into the atlas
The same croissant, before and after. Left: the shipped UVs — confetti. Right: fresh charts, packed to 98% coverage with a 4-texel gutter.

How to do it

  1. Drop your model in. Drag a .glb, .gltf or .fbx file into Rig Bake.
  2. Decimate. Tools → Decimate mesh. Pick a target (5–25% suits most AI models) and create the decimated copy.
  3. Re-unwrap. Tools → Re-unwrap UVs. Hit Preview to see the new layout beside the old one, then create the unwrapped copy with texture re-baking on.
  4. Check it. Use the viewport's wireframe and normals views, and the UV inspector in the Mesh Renderer panel.
  5. Export. Download the scene as .glb, or bake it straight to a spritesheet.

Your textures come with it

A new UV layout is worthless if it orphans your textures. Rig Bake rasterizes the mesh into the new UV space on the GPU and samples the old texture through the old UVs — so every map lands on the new charts. Base colour, normal, roughness, metalness and emissive all follow.

Normal maps get special treatment. They store directions in tangent space, and the tangent basis is derived from the UVs — so resampling one onto a different layout produces a map that looks plausible and lights wrong, in a way that is almost impossible to trace back later. Rig Bake decodes each sample through the old tangent frame and re-encodes it into the new one.

The re-baked base colour atlas laid out on the new UV charts
The re-baked base-colour atlas. Chart edges are flooded outward a few texels so bilinear filtering can't sample the empty gutter and leave dark seams.

Decimate first — the two go together

Raw AI models are 300,000+ triangles, far past what a game needs and past what the unwrapper will take (the ceiling is around 40,000). Decimation is a second's work and gets any model comfortably under it — and the two steps together are what actually turns a generator's output into a game-ready asset.

Source — 385,872 triangles
Wireframe of the source model, so dense the triangles read as a solid mass
Optimized — 19,287 triangles
Wireframe after decimation, with individual triangles clearly legible
Decimation puts triangles where the curvature is — tight around the croissant's rolls, sparse across the flat tray.
Source
The original Meshy AI croissant model, rendered
After decimate + re-unwrap
The same croissant after decimation and UV re-unwrap — visually identical
95% of the triangles gone, the UVs rebuilt, the textures re-baked — and it still looks like the same croissant.
Measured on this modelBeforeAfter
Triangles385,87219,287−95%
Vertices203,83718,899−91%
File size (.glb)19.3 MB4.7 MB−76%
Texture atlas2048²1024²−75% texels
UV coveragefragmented98%packed
Total time, in-browser8.4 sno server

What it repairs on the way

An unwrapper is only as good as the topology it is handed, and AI meshes are handed over in poor shape. Rig Bake builds a welded, manifold view of the mesh for the unwrapper — healing the seam splits that would otherwise read as cuts, dropping duplicate and degenerate faces, and splitting non-manifold edges into separate sheets. Your geometry is never touched by any of this: it is the topology the unwrapper sees, not the mesh you keep.

  • Non-destructive. The unwrapped model lands as a new object. The original stays exactly as it was — compare them side by side, bake either.
  • Rig-safe. Skin weights, normals and material groups are carried across. Vertices are only ever split where a chart seam genuinely needs one.
  • Tunable. Atlas size, chart size and gutter padding are yours to set, with a live before/after preview of the layout before you commit.

Frequently asked questions

Why do AI-generated models have bad UVs?

Meshy, Tripo and Rodin auto-unwrap the mesh into thousands of tiny charts. It renders fine, but the map is mostly gutter and the islands often overlap, so the model can't be repainted, light-baked or atlased.

Do my textures survive the re-unwrap?

Yes. Base colour, normal, roughness, metalness and emissive are re-baked onto the new charts on the GPU. Normal maps are decoded through the old tangent frame and re-encoded into the new one, so lighting stays correct.

Is the original model changed?

No. The unwrapped model lands as a new object in the scene; the original stays exactly as it was, so you can compare the two or bake either.

Is there a size limit?

The unwrapper works up to roughly 40,000 triangles. Run Tools → Decimate mesh first — a raw AI model is usually 300,000+ triangles, and a game-ready asset wants far fewer anyway.

Related