How-to · Cleanup
Fixing UVs and Textures on AI 3D Models
Re-unwrap fragmented UVs with Smart UV Project, know why remeshing deletes them, and handle baked-in lighting in AI textures. Blender menu names from the manual.
After a voxel remesh the old UVs are gone, so the practical fix is to unwrap the new mesh with Smart UV Project and bake the old texture onto it. Baked-in lighting is a separate problem; we found no Blender-documented automatic fix: you regenerate the texture, repaint it, or accept it. This page covers the UV and texture side; the bake settings are on baking normal maps from a high-poly AI mesh.
Version note. Names below are from the Blender 5.2 LTS manual source (blender-v5.2-release branch), read 2026-11-08; 4.5 LTS was not checked. Labels can move. Vendor features and credit figures are as of November 2026.
Keep, rebuild or regenerate
Start with whether the existing UVs are worth anything. The answer depends mostly on what happened to the mesh.
| Situation | What to do | Why |
|---|---|---|
| Light cleanup only (loose bits, merged doubles) | Keep the UVs and texture | The surface is largely the original surface |
| Decimated, seen at a distance | Keep and inspect for stretching | Collapse moves vertices under the existing map |
| Voxel remeshed or QuadriFlow | Unwrap fresh, then bake | Old UVs no longer exist or no longer fit |
| New low-poly built by hand | Unwrap fresh, then bake | Same reason |
| Texture itself is bad | Regenerate or repaint first | No unwrap fixes painted lighting or mushy detail |
Why AI meshes have UV problems
A generator’s texture is mapped to the generator’s own mesh, so when you change the mesh the mapping can break:
- Voxel Remesh deletes UVs. The manual says it will “lose all mesh object data layers” of the original mesh, though its Preserve options (Paint Mask, Face Sets, Color Attributes) reproject some data. Blender 5.2’s release notes say the voxel remesher now interpolates vertex and corner attributes instead of taking the nearest point’s value, and present that as better preservation of vertex paint. They do not say UV maps survive, so plan on new UVs.
- Decimate changes the mesh under them. The manual’s Decimate Planar mode has a Delimit option (Normal, Material, Seam, Sharp, UVs) that can keep UV boundaries; Collapse mode lists no UV option, so check UV stretching after reducing. KatsBits, a Blender tutorial site, was noted as adding that AI UV maps are as dense as the mesh and that Decimate degrades them to the same extent; we could not re-open that page at our final check, so treat it as unconfirmed.
- Fragmented islands. Whether AI UV layouts are fragmented, and how often, is not established by any source we read; see the texture and PBR quality protocol for how to inspect it.
To check your own, open the UV Editing workspace, select all faces in Edit Mode, and turn on Display Stretch in the UV Editor’s Overlays popover. Blue means little distortion and red means high; Display Stretch Type switches between Angle and Area. The manual’s workflow also suggests adding a test image to see the distortion on the model itself.
Re-unwrap: Smart UV Project
- Select the final, cleaned mesh and enter Edit Mode. Select all faces.
- Choose UV > Unwrap > Smart UV Project (3D Viewport or UV Editor). Adjust in the Adjust Last Operation panel.
- Options per the manual: Angle Limit, Margin Method (Scaled, Add, Fraction), Rotation Method (Axis-aligned, Axis-aligned (Horizontal), Axis-aligned (Vertical)), Island Margin, Area Weight (0 averages face normals equally, 1 weights by area), Correct Aspect (needs an Image Texture node selected), Scale to Bounds.
- Inspect in the UV Editor: islands should not overlap, and margins should leave room for texture bleed.
The manual says lower Angle Limit values create more, smaller islands with less distortion, and that the method suits mechanical objects and architecture. How many islands it makes on organic shapes is not documented in our sources, so check the result.
Choosing an unwrap method
| Method (menu) | What the manual says | Use on |
|---|---|---|
| UV > Unwrap > Smart UV Project | Cuts along sharp edges, projects each group along its average normal; good for mechanical objects or architecture | Hard-surface props, quick results |
| UV > Unwrap (Angle Based, Conformal, Minimum Stretch) | Cuts along your seams and flattens; useful for organic shapes | Characters and hero props |
| UV > Unwrap > Follow Active Quads | Extends from the active quad to neighbors; non-quad faces are ignored | Regular all-quad patches, such as QuadriFlow output |
| UV > Unwrap > Lightmap Pack | Places each face separately; typically disconnected and distorted | Lightmaps only |
Blender 5.2’s release notes list an “Original bounding box unwrapping option”; the 5.2 manual’s Unwrap options list Original Bounds, described as unwrapping islands into their original bounds rather than repacking them.
Seams on the parts that show
For Unwrap, you mark seams first. The manual’s workflow is mark, unwrap, adjust and repeat, and its advice is to have as few seams as possible while keeping stretching low, and to hide seams where they will not be seen.
- In Edit Mode, select the edges and use Edge > Mark/Clear Seam, or Ctrl-E, and pick Mark Seam. UV > Mark/Clear Seam also works.
- Check continuity: in Face Select mode, Select Linked stops at seams, so if faces beyond your intended seam are selected, the seam is not continuous.
- Unwrap and look at Display Stretch. More seams mean less stretching, so add one where it stays red.
Packing, margins and texel density
Texel density is how many texture pixels cover a unit of surface. When it varies across a model, some parts look sharp and others blurred.
Blender’s tools for it: UV > Average Island Scale scales islands so they are all approximately the same scale, and UV > Pack Islands fits them into the texture space with a margin. The manual notes the Bounding Box shape method with the Add margin method is fastest, and that Fraction margins can be much slower.
A worked example, with invented inputs. A 2048-pixel texture, and an island that spans a quarter of the UV width while covering 0.5 m of surface: 2048 × 0.25 ÷ 0.5 = 1,024 pixels per meter. If a neighboring part works out at 200 pixels per meter, it will look soft next to the first, and Average Island Scale is the first thing to run.
Overlaps need a decision, not a reflex. Sharing a texture across mirrored parts by stacking islands saves space, but Polycount’s baking guide says only one copy should remain in the 0-1 square at bake time, or the baker will write each shell into the map. For a remeshed AI prop, keep it simple and do not overlap.
Lightmap UVs are a separate set
Lightmap UVs are different from texture UVs. Blender’s Lightmap Pack exists (options include Share Texture Space, New UV Map, Pack Quality, Margin), and its New UV Map option creates a separate map rather than overwriting the current one. The manual says lightmap layouts are usually unsuitable for manual texturing work, so do not use them as your texture UVs. Engines can generate their own: Godot’s Light Baking set to Static Lightmaps generates UV2.
Letting the generator do it
Some generators and platforms unwrap in their web apps. These trade control for convenience, and they differ on the point that matters most, whether your texture survives.
- Meshy Unwrap UV. Costs 5 credits per its docs and saves a separate model. The docs recommend it after Remesh and before AI Texturing, say Remesh already bakes textures onto the new mesh, and warn that Unwrap UV converts quad topology to triangles. There is a face limit, and the tool shows it.
- 3D AI Studio UV Unfold offers three engines per its docs: Smart UV (15 credits, up to 80,000 triangles and 150 MB), which re-bakes existing textures and keeps rigging; and Meshy (8 credits, 40,000 faces) and Hunyuan (5 credits, 30,000 faces and 120 MB), which generate fresh UVs only, so textures no longer align.
Whichever you use, unwrapping after texturing without a re-bake leaves the texture attached to a layout it no longer matches. We have not seen independent evidence of how well any of these work.
Baked lighting in AI textures
A base color texture with shadows or highlights painted in will not respond to your scene lights, so check yours under neutral lighting. How common this is across generators is not established by the sources we read. Options:
- Regenerate with a generator’s PBR or unlit/albedo output if it offers one. Meshy’s Retexture API documents
remove_lighting(“Whether to remove highlights and shadows from the base color texture”, default true) andenable_original_uv(keep the model’s UV layout instead of generating a new one, default false). Per that page,remove_lightingonly takes effect withmeshy-6at 2K or 4K; it is accepted but ignored withmeshy-7,latestor 8K, and returns 400 withmeshy-6-liteormeshy-n1. We have not seen evidence of how well it works. - Repaint the base color in a paint tool, by hand.
- Replace the texture with an AI texture tool’s output; see AI texture generators for 3D models.
- Accept it for stylized, low-detail or distant assets.
Apart from the Meshy parameter above (and its limits), we have not read a documented automatic de-lighting method, and we do not recommend one. Check under neutral lighting before committing.
Transferring the old texture to the new mesh
After new UVs, use a Cycles bake (Render properties > Bake) from the hidden original to the new mesh with Selected to Active; the new mesh needs an active Image Texture node to receive the result. For color, the manual’s Diffuse bake with only Color selected gives the surface color independent of sampling, so painted-in lighting transfers with it. Check metal parts afterward: StraySpark, a vendor of bake tools, says the diffuse color pass is weighted by (1 − metallic), so fully metallic areas bake black this way. Details and the settings that matter are on the bake page. The reason to do this for AI meshes: the original texture is the only record of the generator’s color work.
What goes wrong
| Symptom | Likely cause | Fix |
|---|---|---|
| Texture stretched or smeared | Too few seams, or islands distorted | Check Display Stretch; add seams, or lower Angle Limit |
| Sharp in one place, blurred in another | Uneven texel density | Average Island Scale, then Pack Islands |
| Colors bleed at island edges | Margin too small | Raise Island Margin and the bake margin |
| Non-square texture looks squashed | Aspect ignored | Correct Aspect needs an Image Texture node selected in the Shader Editor |
| Old texture now misaligned | UVs changed without a re-bake | Bake from the original onto the new UVs |
| Shadows stuck on the model | Lighting painted into the base color | See the options above; no UV fix applies |
| Unwrap looks wrong on a broken mesh | Shell problems | Fix holes, floaters and broken pieces first |
Checks before moving on
- Textures appear on the new mesh with no stretching or visible seams at normal distance.
- Texture resolution fits your target; the polycount and texture budget numbers for each platform live on the budget calculator as they are collected (Roblox, for one, has a texture specifications page).
- Engine import reads the UVs: see engines.
Stop when it looks right in the engine at gameplay distance. Perfect islands that nobody sees are wasted time. The full procedure including remeshing is at retopology in Blender for AI meshes.
Not verified
Whether specific generators ship fragmented UVs at a measurable rate, and any automatic de-lighting tool. Those belong to the planned texture test.
This page is part of the Cleaning Up AI 3D Models section.
Sources
- Blender manual source (main): UV editing and unwrap
- Blender manual source (main): Unwrapping introduction
- Blender manual source (main): Voxel Remesh
- Blender 5.2 LTS release notes
- Godot documentation: Import configuration
- Meshy Retexture API
- Blender manual source (main): Decimate modifier
- Blender 5.2 manual source: UV operators
- Blender 5.2 manual source: Editing UVs (Pack Islands, Average Island Scale)
- Blender 5.2 manual source: Seams
- Blender 5.2 manual source: Unwrapping introduction
- Blender 5.2 manual source: UV overlays
- Blender 5.2 manual source: Render Baking
- Meshy docs: Unwrap UV
- 3D AI Studio docs: UV Unfold
- KatsBits: Optimising AI Generated 3D Models (could not be re-opened at final check; claim labeled unconfirmed)
- Polycount wiki: Texture Baking
- StraySpark devlog: why QuadriFlow rejects AI meshes (vendor of MeshPrep; diffuse pass and metallic note)